999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于用例庫的自動化回歸測試的設計和實現

2018-02-27 13:29:44葉素梅
電腦知識與技術 2018年35期

葉素梅

摘要:當軟件產品的代碼被修改,特別是在產品的版本更新時,會對原有的代碼產生影響。為了保證產品的整體性能,必須對整個代碼進行回歸測試。回歸測試的重復度較高,工作量較大,自動化測試可以大大提高測試的效率。通過設計并生成測試腳本,在服務器上執行測試命令,并調取用例庫中的測試用例,可以實現回歸測試的自動化。對測試結果進行分析后,自動生成測試報告。

關鍵詞:回歸測試;自動化測試;用例庫;測試用例復用

中圖分類號:TP311.52 ? ? 文獻標識碼:A? ? ?文章編號:1009-3044(2018)35-0055-02

Abstract: When the code of the software product is modified, especially when the product version is updated, it will affect the original code.In order to ensure the overall performance of the product, the entire code must be tested for regression.Regression testing has high repeatability and heavy workload. Automated testing can greatly improve the efficiency of testing.The automation of regression testing can be realized by designing and generating test scripts, executing test commands on the server and calling test cases from the test case database.After analyzing the test results, the test report is automatically generated.

Keywords:Regression Testing; Automated Testing;Testcase Database; Testcasereuse

在軟件開發的整個過程中,對代碼的任何一次修改,都有可能給軟件帶來問題。軟件代碼的修改一般是增加新功能,或者是對已有代碼進行缺陷修正和性能提升。新加入的代碼除了本身可能存在問題外,也有可能會對原有的代碼產生影響[1]。同樣的,對缺陷進行修正的同時,又可能引發了其他的缺陷。因此,每當代碼發生改變時,需要對代碼進行回歸測試,再一次測試所有的功能[2]。對新增的代碼需要對應的增加新的測試用例,對原有的代碼需要再次運行所有的測試用例,以便確定修改后的代碼達到了預期的目標。

回歸測試在整個軟件開發周期中,有著很重要的作用,保障著整個產品的質量和安全。但是回歸測試在軟件測試環節的工作量很大,手動測試的效率不高[3]。在回歸測試中引入自動化測試,通過控制被測軟件的執行,模擬手動測試,可以大大提高測試的效率,節約開發的成本[4]。本文通過對測試用例庫中用例的復用,在多個服務器之間進行腳本設計與執行,構建了一個適用于回歸測試的自動化平臺。

1 系統設計

軟件測試過程中,有很多重復性的工作,特別是在產品的回歸測試中尤為明顯。我們設計了一個由多臺服務器構成的測試平臺,能夠自動執行測試腳本,并通過測試結果的比較分析,最終生成測試報告。

1.1 系統的構成

回歸測試平臺包含4個服務器系統,分別是代碼服務器、編譯服務器、用例庫服務器和測試執行服務器等。

代碼服務器上保存著產品所有被測代碼,可以進行產品的版本管理。在這個服務器上可以根據版本號,自動簽出需要測試的所有代碼。代碼被簽出后,在編譯服務器上進行產品編譯,并根據測試任務生成測試命令腳本。

用例庫服務器管理著產品測試中的可復用測試用例。通過接口可以向庫中手動添加用例,對庫中已有的用例可以通過用例號自動調取。測試執行服務器主要是在服務器上搭建了產品運行的所有環境,以確保產品能夠正常運行。根據產品需求的不同,不同版本的產品所需要的硬件、設備參數、性能參數等環境不太一致。在專門的測試執行服務器上執行產品測試,最大程度上模擬了最終產品的運行環境,避免了多系統多版本的干擾,能夠得到最真實的測試結果。

1.2 系統的邏輯關聯

系統所涉及的四類服務器都構建在局域網環境內。編譯服務器負責從代碼服務器上簽出需要測試的代碼,并開始進行編譯。編譯成功后的產品會回傳到代碼服務器進行版本管理。當編譯結束后,在編譯服務器上會生成測試腳本,也就是生成不同的測試命令清單,并根據測試命令,拉取測試用例清單。測試用例清單會傳送到測試用例庫,用于測試用例的校驗。這個過程主要是為了確保測試用例庫中有全部所需的用例,以免自動執行時,因為無法調取測試用例而報錯。

測試命令會下發到測試執行服務器中,針對每一條執行命令,調取合適的測試用例,并分析結果,最終生成一個測試報告。圖1給出了在各服務器之間數據流轉的示意圖。通過這個平臺,能夠有效地進行產品的回歸測試,盡可能檢測出因為代碼的修改而造成的軟件缺陷,而且測試效率得到很大的提升。

2 系統實現

2.1 回歸測試的預處理

在對一個新版本的產品進行回歸測試之前,必須有針對性地進行軟硬件方面的前期準備。在編譯服務器上需要構建編譯環境,我們的產品主要是要區分Linux系統和windows系統。測試用例庫服務器上需要根據代碼的更新,設計并手動新增合適的測試用例。這些用例需要事先進行手動測試,以確保新增的用例真實有效。一般而言,測試用例庫中更多的是新增用例,不太會刪除用例。新增的用例都有對應的用例編號,以便能存入到用例庫中進行復用管理。測試執行服務器上需要構建產品運行的真實環境。對于我們的產品而言,就是需要機、電、光等各部分都配合到位。

2.2 測試的設計

當產品編譯成功并且測試用例庫完備以后,就可以進行回歸測試的腳本設計了。這個過程需要測試人員人工干預,是一個半自動的過程。測試人員根據產品的業務邏輯,選擇產品的業務編號。每個業務都有相應的測試命令和測試用例列表。測試人員完成選擇后,編譯服務器上會根據業務邏輯自動生成測試腳本。

測試命令腳本示例如下所示:

<TestCommandID = 0101.10>

<Parameter1> a </ Parameter1>

<Parameter2> b </ Parameter2>

……

<InputSet>//192.168.1.1/in.dat</InputSet>

<OutSet>//192.168.1.7/result.dat</OutSet>

<TestCase Suits ID>0101</ TestCase Suits ID>

</ TestCommandID>

一個測試任務一般僅生成一個測試腳本,該腳本依據不同的業務邏輯分成若干段落,每個段落有若干條測試命令,并定義了命令執行的一些參數。對于環境參數一般使用文件附件的形式調入。測試結果的輸出也是記錄在對應的文件中。同時測試命令中給出了需要到測試用例庫中去調取的用例套編號。

2.3 腳本的執行

測試任務腳本在專門的服務器上執行,由測試人員根據任務編號輸入腳本啟動命令后開始。腳本在執行過程中,會對硬件環境的情況進行檢測,對于硬件沒有準備好或者某些場景沒有保存的情況,都會一一記錄在測試結果內。在測試命令執行過程中,會自動調取用例庫中的用例。在測試用例測試過程中,如果出現錯誤,一般會有三種情況。第一種情況是測試用例沒有準備好。這種情況比較少見,一般是由于軟件功能新增后,配套的測試用例沒有同步。第二種情況是測試用例結果錯誤。針對特定的用例值,運行后的結果是錯誤的。這就是需要捕捉的軟件缺陷。還有一種情況是測試命令結果返回錯誤。這種情況是指用例運行結果正確,但是測試命令返回的結果有誤。這個情形出現后,要根據具體情況分析,看看缺陷到底是出現在軟件產品上,還是出現在測試工具本身。

2.4 報告生成

當測試腳本運行結束后,系統會生成當前測試的報告。測試報告給出了測試的統計信息和明細信息。整個報告一般分為三部分:第一部分是測試的統計信息,給出每種缺陷發生的數目;第二部分給出測試用例的運行結果明細;第三部分給出測試命令的運行結果明細。測試報告的示例如下所示:

Test Time: 2018-11-9 09:08:55

Test Task ID: 201811005

Excuting Machine: 192.168.1.7

Object Machine: 192.168.1.2

Summary of Test:

Pass:? 300

EnvNotReady: 0

ExeError: 0

RltError: 0

EnvNotRestore: 0

Test cases detail:

0101 → pass

……

Test command detail:

0101.10 → pass

……

3 結論

當產品的版本進行更新時,隨著代碼的修改或增加,對原有代碼會產生影響。此時需要對整個產品進行回歸測試,以盡可能保證產品整體的穩定性和安全性。回歸測試的重復率較高,而且工作量較大。通過測試任務腳本的生成與執行,并結合測試用例的復用,能夠實現回歸測試的自動化,避免測試用例執行的遺漏,大大提高軟件測試的效率。

參考文獻:

[1] 李丹, 劉杰. 軟件回歸測試及其實踐[J]. 電子產品可靠性與環境試驗, 2001(6):23-25.

[2] 李剛毅, 金蓓弘. 自動化回歸測試的技術和實現 [J]. 計算機應用研究, 2006, 23(2):192-194+213.

[3] 張麗波. 軟件自動化測試的設計與實施[J]. 佳木斯大學學報:自然科學版, 2004, 22(4):568-572.

[4] 朱芳, 李曦, 趙振西. 一種多平臺自動化測試工具的設計和實現 [J]. 計算機工程, 2004, 30(24):186-188.

[通聯編輯:梁書]

主站蜘蛛池模板: 亚洲精品国产自在现线最新| 免费亚洲成人| 波多野结衣一区二区三视频| 亚洲首页在线观看| 激情综合婷婷丁香五月尤物| 日本欧美午夜| 免费一级毛片完整版在线看| www成人国产在线观看网站| 日本精品视频| 亚洲AV人人澡人人双人| 91丝袜美腿高跟国产极品老师| 97国产在线观看| av在线人妻熟妇| 国产成人精品午夜视频'| 亚洲成人精品在线| 国产手机在线观看| h视频在线播放| 亚洲最黄视频| 婷婷亚洲视频| 亚洲香蕉久久| 午夜日b视频| 最新国产精品鲁鲁免费视频| 日本道综合一本久久久88| 岛国精品一区免费视频在线观看| 国产精品美女免费视频大全 | 日韩欧美亚洲国产成人综合| 成人中文在线| 四虎成人精品| 亚洲日韩久久综合中文字幕| 久久人人爽人人爽人人片aV东京热| 鲁鲁鲁爽爽爽在线视频观看| 在线看免费无码av天堂的| 国产欧美日韩在线一区| 国产一区二区三区视频| 国产精品开放后亚洲| 国产又粗又猛又爽| 免费在线成人网| 色综合久久88| 国产精品一区二区不卡的视频| 激情综合网激情综合| 国产成人乱码一区二区三区在线| 4虎影视国产在线观看精品| 欧美激情视频二区| 日韩第一页在线| 久久香蕉国产线| www.亚洲一区| 中文字幕色在线| 亚洲人精品亚洲人成在线| 亚洲福利片无码最新在线播放| 国产91熟女高潮一区二区| 91午夜福利在线观看精品| 久久久噜噜噜久久中文字幕色伊伊 | 97视频在线观看免费视频| 久久国产拍爱| 国产在线视频二区| 成人在线天堂| 欧美亚洲激情| 岛国精品一区免费视频在线观看 | 国产日韩欧美一区二区三区在线| 亚洲精品手机在线| 欧美a级完整在线观看| 无遮挡国产高潮视频免费观看| 亚洲高清资源| 国产精品人莉莉成在线播放| 青青青视频免费一区二区| V一区无码内射国产| 四虎永久免费地址| 制服丝袜一区二区三区在线| 中国国产高清免费AV片| 国产1区2区在线观看| 国产AV无码专区亚洲精品网站| 国产精品对白刺激| 国产国产人在线成免费视频狼人色| 亚洲欧洲日本在线| 高清国产在线| 精品人妻AV区| 小13箩利洗澡无码视频免费网站| 香蕉久人久人青草青草| 国产精品yjizz视频网一二区| 天堂在线www网亚洲| 亚洲日韩日本中文在线| 亚洲视频一区|