本發(fā)明涉及軟件測試驗證,尤其涉及一種整合的java全環(huán)境運行測試系統(tǒng)及測試方法。
背景技術(shù):
1、目前,系統(tǒng)性的環(huán)境測試仍然不被大多數(shù)企業(yè)所采用,主要原因在于測試環(huán)境的搭建過于繁瑣,所使用的時間和人力資源極多,且不一定能夠有效的檢測出問題所在。java運行在超過30億部設備上,環(huán)境紛繁復雜,包括個人電腦,商用服務器,智能設備,移動設備,和廣泛存在的服務商固件系統(tǒng)重。整合這些測試環(huán)境對于缺乏時間和設備采購成本的開發(fā)團隊來說幾乎不可能。使得系統(tǒng)測試工作難以在符合當下軟件開發(fā)標準的環(huán)境中展開和施行。
2、現(xiàn)有的集成測試系統(tǒng),主要以“測試軟件在不同的jre版本下的表現(xiàn)”為目的,但是在商業(yè)應用中jre版本并非軟件兼容性面對的唯一問題,oracle為部分大型廠商進行的系統(tǒng)定制使得這些廠商的設備在java運行環(huán)境上與眾不同,智能設備領域,尤其是移動端和web環(huán)境的定制化系統(tǒng)也廣泛存在自定義api和重寫系統(tǒng)類的情況,使得模擬這些環(huán)境變得極其困難。且由于采購多種平臺進行測試時,獲取到全部平臺的應用層測試日志和輸出反饋是一個耗時耗力的工作往往無法按時完成,這使得一些不會引發(fā)崩潰的問題被忽視,軟件系統(tǒng)的測試結(jié)果不一定代表部署后的真實表現(xiàn)在這種情況下,后期開發(fā)人員想要獲取相關的漏洞信息和警告日志變得困難,從而不得不再進行一次測試,浪費了寶貴的生產(chǎn)時間。
技術(shù)實現(xiàn)思路
1、本申請的目的是針對現(xiàn)有技術(shù)中存在的技術(shù)缺陷,而提供一種整合的java全環(huán)境運行測試系統(tǒng)及測試方法。
2、為實現(xiàn)本申請的目的所采用的技術(shù)方案是:
3、一種整合的java全環(huán)境運行測試系統(tǒng),包括用于模擬java運行環(huán)境、運行所有待測試的服務進程、數(shù)據(jù)庫的主服務器和用于部署后臺程序、為需要測試的java前端提供后臺支持的后臺服務器,所述主服務器與后臺服務器連接;
4、所述主服務器注冊有虛擬機,所述虛擬機默認安裝有多種windows個人版、1inux桌面系統(tǒng)、移動設備模擬器和android系統(tǒng),所述虛擬機鏡像載入有測試所需的虛擬操作系統(tǒng)并模擬分配cpu和內(nèi)存資源,用于模擬不同配置的移動設備,所述虛擬機還安裝有制定的智能設備操作系統(tǒng),以微程序或聯(lián)合應用的形式進行測試;所述虛擬機通過特定的命令行操作查看和監(jiān)控虛擬操作系統(tǒng)的日志以及runtime環(huán)境下的命令行輸出,并建立項目檔案,按照項目將日志文件分類保留;
5、所述后臺服務器與虛擬機連接,自由控制與主服務器的連接端口和發(fā)送信息,并模擬特殊情況,供測試人員觀察問題和現(xiàn)象;所述后臺服務器上傳有定義自身后臺系統(tǒng)啟動順序的后臺文件,還包括用于啟動主服務器的ssh服務。
6、在上述技術(shù)方案中,所述主服務器通過路由器與后臺服務器連接。
7、在上述技術(shù)方案中,所述主服務器通過廣域網(wǎng)ip與后臺服務器連接。
8、在上述技術(shù)方案中,所述主服務器與后臺服務器的數(shù)據(jù)交互通過http協(xié)議實現(xiàn)。
9、在上述技術(shù)方案中,所述日志文件包括前端日志和后端日志兩類,所述前端日志保存在主服務器上,所述后端日志保存在后臺服務器上。
10、在上述技術(shù)方案中,所述前端日志與后端日志均通過移動介質(zhì)拷貝后查看。
11、一種整合的java全環(huán)境運行測試方法,包括以下步驟:
12、步驟1,根據(jù)測試需求列一張測試所要求的全部程序的列表,從第一項測試開始,在主服務器上新注冊一個該項測試所需的虛擬機;
13、步驟2,啟動后臺服務器,將待測試程序的后臺文件打包并上傳至后臺服務器的指定目錄下解壓,找到后臺需要啟動的所有服務進程的可執(zhí)行文件,新建一個txt文檔命名為start,并將可執(zhí)行文件的名字依次輸入到文檔中,以換行來分割各個可執(zhí)行文件的名字;
14、步驟3,在后臺服務器的命令行中輸入“systart路徑/start.t”來按次序自動啟動后臺服務所需要的各個進程,通過后臺服務器上的ssh服務啟動主服務器并建立與虛擬機端口的通訊連接;
15、步驟4,預先設定鏡像,從預先設定的鏡像中選擇該項測試所需的虛擬操作系統(tǒng)鏡像載入,并啟動虛擬機;
16、步驟5,將待測試的打包文件安裝在步驟4鏡像載入的虛擬操作系統(tǒng)中,進行完整的α測試流程;
17、步驟6,步驟5的α測試完成后,分別從主服務器和后臺服務器上導出日志文件留作分析,所述后臺服務器模擬特殊情況,供測試人員觀察問題和現(xiàn)象;
18、步驟7,注銷該項測試所注冊的虛擬機,重新注冊一個下一項測試所需的虛擬機,并重復步驟2至步驟6的操作,直至步驟1所述的列表全部完成;
19、步驟8,測試人員通過移動介質(zhì)拷貝主服務器上的前端日志和后臺服務器上的后端日志,并對前端日志和后端日志進行分析,根據(jù)分析結(jié)果對程序進行調(diào)試。
20、本發(fā)明的有益效果如下:
21、本發(fā)明的java全環(huán)境運行測試系統(tǒng)完全依靠用于模擬java運行環(huán)境、運行所有待測試的服務進程和數(shù)據(jù)庫的主服務器和用于部署后臺程序、為需要測試的java前端提供后臺支持的后臺服務器,以及內(nèi)網(wǎng)環(huán)境,整合了以往大型團隊需要大量時間才能完成整合、小型團隊沒有能力和資源去整合的系統(tǒng)資源和環(huán)境,為開發(fā)和測試工作提供環(huán)境上的保障;且著重提高了開發(fā)團隊在測試環(huán)節(jié)的效率的準確性,降低以往為達到相同效果所需要的成本和時間;由于本發(fā)明的java全環(huán)境運行測試系統(tǒng)可以本地化部署,在提供全面的測試環(huán)境的同時,也能保證代碼的安全,避免將測試工作交給第三方機構(gòu)是可能發(fā)生的泄露問題。
1.一種整合的java全環(huán)境運行測試系統(tǒng),其特征在于,包括用于模擬java運行環(huán)境、運行所有待測試的服務進程、數(shù)據(jù)庫的主服務器和用于部署后臺程序、為需要測試的java前端提供后臺支持的后臺服務器,所述主服務器與后臺服務器連接;
2.根據(jù)權(quán)利要求1所述的java全環(huán)境運行測試系統(tǒng),其特征在于,所述主服務器通過路由器與后臺服務器連接。
3.根據(jù)權(quán)利要求1所述的java全環(huán)境運行測試系統(tǒng),其特征在于,所述主服務器通過廣域網(wǎng)ip與后臺服務器連接。
4.根據(jù)權(quán)利要求1所述的java全環(huán)境運行測試系統(tǒng),其特征在于,所述主服務器與后臺服務器的數(shù)據(jù)交互通過http協(xié)議實現(xiàn)。
5.根據(jù)權(quán)利要求1所述的java全環(huán)境運行測試系統(tǒng),其特征在于,所述日志文件包括前端日志和后端日志兩類,所述前端日志保存在主服務器上,所述后端日志保存在后臺服務器上。
6.根據(jù)權(quán)利要求1所述的java全環(huán)境運行測試系統(tǒng),其特征在于,所述前端日志與后端日志均通過移動介質(zhì)拷貝后查看。
7.一種基于權(quán)利要求1-6所述的java全環(huán)境運行測試系統(tǒng)的測試方法,其特征在于,包括以下步驟: