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

軟件測試自動化在黑盒測試中的應用

2008-04-12 00:00:00楊德紅
現(xiàn)代電子技術(shù) 2008年18期

摘 要:介紹黑盒測試的方法,對手工測試的不足以及自動化測試的特點進行研究。以XCRW18型貨車標簽編程器軟件(廠礦企業(yè)版)寫標簽數(shù)據(jù)測試為例,進行了測試問題的分析、測試用例的設(shè)計,并用VBScript編寫自動化腳本,在QTP平臺下實現(xiàn)了黑盒測試中的軟件測試自動化,不但節(jié)省了人力,而且提高了測試的效率和可信度。

關(guān)鍵詞:黑盒測試;自動化測試;測試用例;XCRW18型貨車標簽編程器軟件

中圖分類號:TP311.5 文獻標識碼:B 文章編號:1004373X(2008)1809003

Application of Software Test Automation in Blackbox Testing

YANG Dehong

(Invengo Information Technology Co.Ltd.,Shenzhen,518057,China)

Abstract:This paper introduces the technique of blackbox testing.The shortcoming of manual test and the characteristic of test automation are studied.The programming to tag testing of XCRW18 series freighttrain tag programmer software(mineral plant version)is introduced as an example of the method.The test object is analyzed,the test cases are designed,and software test automation in blackbox testing implemented with QTP is described in VBScript.It not only saves human resource,but also enhances efficiency of the test.

Keywords:blackbox testing;test automation;test case;XCRW18 series freighttrain tag programmer software

黑盒測試把被測對象看作一個不能打開的黑盒子,在完全不考慮其內(nèi)部結(jié)構(gòu)和內(nèi)部特性的情況下,測試其是否能適當?shù)亟邮蛰斎霐?shù)據(jù)并產(chǎn)生正確地輸出信息,并且保持外部信息的完整性[1]。黑盒測試在軟件測試中占有重要的地位,但常規(guī)的手工黑盒測試,在軟件測試尤其是大中型軟件測試中不但測試效率和覆蓋率低下,而且測試的穩(wěn)定性和可靠性差。本文在XCRW18型貨車標簽編程器軟件(廠礦企業(yè)版)黑盒測試中有效地運用了自動化測試技術(shù),較好解決了上述問題。

1 黑盒測試常用技術(shù)與方法

黑盒測試方法主要應用于功能和性能方面的測試,其常用的技術(shù)和方法有:

(1) 邊界值分析方法:邊界值分析方法的基本思想是使用最小值(min)、略高于最小值(min+)、正常值(nom)、略低于最大值(max-)、最大值(max)處取輸入變量值。如果要測試被測對象的健壯性除了變量的5個邊界值外,還要通過采用一個超過最大值(max+)和一個略小于最小值(min-)的取值,看看超過極值時系統(tǒng)會有什么反應。如果被測對象是多個獨立變量的函數(shù),這些變量受物理量的限制,則很適合邊界值分析。

(2) 等價類劃分法:把所有可能輸入數(shù)據(jù)劃分成若干個等價類,然后每類中抽取一組既有代表性,又可能發(fā)現(xiàn)程序中錯誤的數(shù)據(jù)作為測試數(shù)據(jù),基于此測試的方法就稱為等價類劃分法。

(3) 全對偶設(shè)計方法:全對偶是在全組合結(jié)果基礎(chǔ)上進行優(yōu)化,把其中有效的用例篩選出來,以達到采用最小的測試用例集,覆蓋最大測試域的測試效果,其核心思想就是測試用例的任意2個變量至少在測試結(jié)果里出現(xiàn)一次[2]

2 軟件測試自動化技術(shù)

2.1 測試自動化原理和方法

軟件測試自動化是相對手工測試而存在的,主要是通過軟件測試工具、腳本等來實現(xiàn),具有良好的可操作性、可重復性和高效性等特點。下面簡單介紹測試自動化的主要原理和方法[1]

(1) 捕獲和回放:捕獲和回放是一種黑盒測試的自動化方法。捕獲和回放一般步驟如下:首先將用戶每一步操作都記錄下來;其次將所有記錄轉(zhuǎn)換為一種腳本語言描述的過程,以模擬用戶的操作;然后回放時將腳本語言所描述的過程轉(zhuǎn)換為屏幕上的操作;最后將被測系統(tǒng)的輸出記錄下來與預先給定的標準結(jié)果比較。該方法比較適合在迭代開發(fā)過程中進行回歸測試,可以大大減少黑盒測試的工作量。

(2) 腳本技術(shù):腳本是一組測試工具執(zhí)行的指令集合,可以直接用腳本語言編寫也可以通過錄制測試的操作產(chǎn)生,然后對產(chǎn)生的腳本進行加強。后者可以減少腳本編程的工作量。腳本技術(shù)不僅可以在功能測試中模擬用戶的操作,然后進行比較,而且可以在性能、負載測試上虛擬用戶同時進行相同或者不同的操作,給系統(tǒng)或服務器足夠的數(shù)據(jù)、操作,以檢驗系統(tǒng)或服務器的響應速度、數(shù)據(jù)吞吐能力等。

2.2 測試自動化特點

相比手工測試,測試自動化有以下幾個特點[4]

(1) 可以對程序的新版本自動執(zhí)行回歸測試。這是測試自動化的最主要的任務。在需要頻繁修改大量程序的環(huán)境中,自動化進行回歸測試的開銷是最小的。

(2) 可以執(zhí)行更多更頻繁的測試。自動化測試的一個特點是可以在較短的時間內(nèi)進行更多的測試。

(3) 可以執(zhí)行一些手工測試困難或不可能進行的測試。如對于200個用戶的聯(lián)機系統(tǒng),用手工進行并發(fā)操作的測試幾乎是不可能的,但自動測試工具可以模擬來自200個用戶的輸入。客戶端用戶通過定義可以自動回放的測試,隨時都可以運行用戶腳本,即使是不了解整個商業(yè)應用復雜內(nèi)容的技術(shù)人員也可以勝任。

(4) 可以更好地利用資源。將繁瑣的任務自動化,如重復輸入相同的測試輸入,可以提高準確性和測試人員的積極性,將測試人員解脫出來轉(zhuǎn)而投入更多精力設(shè)計更好的測試用例。并且自動化測試可以不停地進行測試,可以利用整夜或周末空閑的機器執(zhí)行自動測試,有效地利用了計算機的資源。

(5) 測試具有一致性和可重復性。測試自動化可以重復進行多次相同的測試,因此可以獲得測試的一致性,這在手工測試中是很難保證的。有些測試可能在不同的硬件配置下執(zhí)行,使用不同的操作系統(tǒng)或不同的數(shù)據(jù)庫,此時要求多平臺產(chǎn)品的跨平臺質(zhì)量的一致性,這在手工測試的情況下很難做到。

(6) 測試的重用性。自動化測試的測試用例經(jīng)過一次執(zhí)行之后,在以后的測試中可以不斷重用而無需人工參與,這一點在手工測試中是無法做到的。

(7) 更快地將軟件推向市場。一旦一系列的測試已經(jīng)被自動化,可以比手工測試更快地重復執(zhí)行,大大縮短了測試時間。

(8) 增加軟件信任度。一旦得知軟件通過強有力的自動測試后,軟件發(fā)布時對其的信任度也會提高。

3 測試自動化應用實例

3.1 寫標簽數(shù)據(jù)的測試

本例(見圖1)主要測試寫標簽數(shù)據(jù)中“屬性”、“車種”、“車型”、“車號”、“換長”、“制造廠”、“制造時間”設(shè)置為不同值時是否能正常寫入標簽信息。這幾個變量值都有范圍的限制。

其中,屬性的代碼必須為“!”;車種代碼由1位大寫字母組成;車型代碼由5位大寫字母和數(shù)字組合而成,實際字符代碼左邊對齊,余下的域由空格填齊;車號代碼由7位字母加數(shù)字表示,第1位為字母Q(大寫),實際數(shù)字編碼由右邊對齊,左邊余下的域由“0”填齊;換長由2位數(shù)字表示,范圍為0.0~9.9;制造廠由1位代碼表示,范圍為A~Z和0~9;制造時間由3位數(shù)字和字母表示,前2位為數(shù)字,表示年的十位和個位,后1位表示月份,范圍為1~9和A~C。

結(jié)合邊界值分析方法和等價類方法,對TB/T24351993 《鐵路貨車車種車型車號編碼》中所有車型以及XCRW18型貨車標簽編程器軟件(廠礦企業(yè)版)提供的國鐵車型數(shù)據(jù)進行了等價類劃分,共劃分為14類,每類中抽取1個數(shù)據(jù)作為車型測試數(shù)據(jù),基本覆蓋了所有車種(由于車型中首字母表示對應的車種,確定了車型就能得到此車型對應的車種,所以這里主要分析了車型數(shù)據(jù))。換長測試數(shù)據(jù)選取5個,分別是0.0,0.1,1.2,9.8,9.9。車號測試數(shù)據(jù)選取5個,分別是Q000000,Q000001,Q459162,Q999998,Q999999。制造年選取5個,分別是00年、01年、49年、98年、99年。制造月選取5個,分別是01月(1)、02月(2)、10月(A)、11月(B)、12月(C)。制造廠選取10個,分別是齊齊哈爾車輛廠(A)、哈爾濱車輛廠(B)、四方機車車輛廠(K)、內(nèi)蒙一機廠(Y)、重慶鑄鍛廠(Z)、晉西機械廠(0)、波蘭廠(1)、克留柯夫廠(4)、預留1(8)、預留2(9)。如圖2所示。(注:括號內(nèi)為寫入標簽內(nèi)的信息)

通過以上邊界值分析和等價類劃分(主要考慮了有效等價類)后,確定了各變量值的取值個數(shù),再通過全對偶設(shè)計方法就可以設(shè)計相應的測試用例,根據(jù)全對偶算法[2]得知可以設(shè)計140個測試用例,如圖3所示。

在每一個測試用例中,寫標簽數(shù)據(jù)的每一個變量值設(shè)置操作過程都相同,其他測試用例的執(zhí)行是一個簡單的機械重復過程。這類情況非常適合自動化測試。

在采用自動化測試時,只需手工完成一個測試用例,用測試工具(如:Mercury QuickTest Professional)捕獲其操作過程并錄制成腳本,然后對錄制的腳本進行修改。修改后的核心腳本代碼(基于VBScript語言)如下:

… ′其他初始化代碼

k=DataTable.GetSheet (2).GetRowCount

For j=1 to k ′循環(huán)執(zhí)行140個測試用例

VbWindow(\"frmMain\").VbComboBox(\"Combo6\").Select DataTable(\"車種\",dtLocalSheet) ′參數(shù)化車種

VbWindow(\"frmMain\").VbComboBox(\"Combo2\").Select DataTable(\"車型\",dtLocalSheet) ′參數(shù)化車型

VbWindow(\"frmMain\").ActiveX(\"MaskEdBox\").Type DataTable(\"換長\",dtLocalSheet) ′參數(shù)化換長

VbWindow(\"frmMain\").VbComboBox(\"Combo3\").Select DataTable(\"制造廠\",dtLocalSheet)′參數(shù)化制造廠

′參數(shù)化制造時間(合并了制造年月)

VbWindow(\"frmMain\").AcxCalendar(\"DTPicker\").SetDate DataTable(\"制造時間\",dtLocalSheet)

VbWindow(\"frmMain\").ActiveX(\"MaskEdBox_2\").Type DataTable(\"車號\",dtLocalSheet)′參數(shù)化車號

′清理寫標簽失敗時彈出的對話框

Dim ErrorWin

′創(chuàng)建對象名為ErrorWin的對象

Set ErrorWin=description.Create()

′對象屬性及值

ErrorWin( \"regexpwndtitle\").value=\"標簽編程器\"

Set child=desktop.ChildObjects (ErrorWin)

For i=1 to child.count

child(i-1).close′循環(huán)尋找ErrorWin對象,依次關(guān)閉

next

VbWindow(\"frmMain\").ActiveX(\"SBarCtrl\").Check CheckPoint(\"寫標簽成功\")′檢查是否寫標簽數(shù)據(jù)成功

DataTable.SetNextRow

Next

VbWindow(\"frmMain\").Close ′關(guān)閉測試對象

在腳本編寫完之后,只需將腳本重放就可以自動完成其他測試用例。在后期做回歸測試時,也只需將該腳本重放即可,而不需要做簡單重復且無創(chuàng)意的工作。

3.2 應用實例總結(jié)

本例中綜合運用3種黑盒測試方法設(shè)計高效的測試用例。在大中型軟件測試中,類似“寫標簽數(shù)據(jù)”的測試很多。當對其進行回歸測試時,采用手工方式工作量會非常大,不但會浪費人力物力而且會大大降低測試人員的積極性。相反,如果進行自動化測試,每一次回歸測試只需要將原來編寫的腳本重放一遍,非常方便。

4 結(jié) 語

軟件測試在軟件開發(fā)中具有重要地位,黑盒測試在軟件測試中也是舉足輕重的。將軟件測試自動化方法有效地應用到XCRW18型貨車標簽編程器軟件(廠礦企業(yè)版)黑盒測試中,不但節(jié)省了人力且提高了測試的效率和可信度。

參 考 文 獻

[1]朱少民.軟件測試方法與技術(shù)[M].北京:清華大學出版社,2005.

[2]文俊浩,朱燦,張楊.基于全對偶算法的自動化測試方法[J].重慶大學學報,2005,28(10):5961.

[3]Mark Fewster,Dorothy Graham.軟件測試自動化技術(shù)及實例詳解[M].舒智勇,譯.北京:電子工業(yè)出版社,2000.

[4]Paul C.Jorgensen.軟件測試[M].韓柯,杜旭濤,譯.北京:機械工業(yè)出版社,2003.

[5]TB/T 24351993,鐵路貨車車種車型車號編碼[S].2003.

[6]劉文,周群,張建軍.關(guān)于軟件測試\\ .現(xiàn)代電子技術(shù),2004,30(14 ):5759.

作者簡介 楊德紅 男,1983年出生,云南大理人,工學學士,畢業(yè)于合肥工業(yè)大學,深圳市遠望谷信息技術(shù)股份有限公司軟件測試工程師。研究方向為軟件測試。

主站蜘蛛池模板: 91精品啪在线观看国产60岁 | 久久久久亚洲精品成人网| 国产精品无码AV片在线观看播放| 亚亚洲乱码一二三四区| 国产主播福利在线观看| 亚洲日韩精品综合在线一区二区| 国产精品所毛片视频| 国产精品无码一区二区桃花视频| 国产第二十一页| 日韩国产综合精选| 日本不卡在线播放| 亚洲一道AV无码午夜福利| 国产情侣一区二区三区| 制服丝袜 91视频| 国产乱肥老妇精品视频| 国产福利一区视频| 啦啦啦网站在线观看a毛片| 99精品福利视频| 亚洲最大在线观看| 亚洲性日韩精品一区二区| 国产永久无码观看在线| 全裸无码专区| 日韩精品成人在线| 日韩第一页在线| 在线观看精品自拍视频| 成人福利视频网| 亚洲有码在线播放| 日本国产精品一区久久久| 91在线国内在线播放老师| 免费国产黄线在线观看| 91久久大香线蕉| 国产sm重味一区二区三区| 日韩欧美国产综合| 97精品伊人久久大香线蕉| 精品久久国产综合精麻豆 | 97在线碰| 亚洲精品视频免费看| 欧美精品v欧洲精品| 国产在线八区| 精品91视频| 久久国产拍爱| 国产情精品嫩草影院88av| 天天摸夜夜操| 玖玖精品在线| 日韩欧美91| 国产熟女一级毛片| 国产成人高清精品免费软件| YW尤物AV无码国产在线观看| 欧美日本二区| 欧美午夜在线播放| 国产成人综合在线视频| 最新日本中文字幕| 国产aaaaa一级毛片| 高清久久精品亚洲日韩Av| 国产成人一级| 在线播放真实国产乱子伦| 国产成人久久综合777777麻豆| 午夜不卡福利| 67194亚洲无码| 中文成人在线视频| 久久精品人人做人人爽97| 婷婷伊人久久| 久久国产精品夜色| 国产成人综合亚洲欧美在| 欧美激情视频二区| 蜜桃视频一区| a色毛片免费视频| 在线视频亚洲色图| 无码在线激情片| 国产另类视频| 色综合网址| 久无码久无码av无码| 久久国产香蕉| 米奇精品一区二区三区| 久久综合AV免费观看| 国内老司机精品视频在线播出| 91久久精品国产| 久热中文字幕在线观看| 亚洲国产亚洲综合在线尤物| 精品中文字幕一区在线| 香港一级毛片免费看| 制服丝袜无码每日更新|