parasoft Jtest 使用教程:創(chuàng)建并使用參數(shù)化測試用例(上)
本次教程的內(nèi)容是怎樣生成和使用參數(shù)化的JUnit測試用例,一起來看看吧。
進(jìn)行之前,需要?jiǎng)?chuàng)建Jtest Example工程并測試用例參數(shù)化許可??稍斠娭敖坛?。
詳細(xì)步驟
- 復(fù)習(xí)用戶定義的測試用例Jtest Example> examples.nbank>AccountTest.java.的可用性。
- 通過選擇Jtest Example> examples.nbank>Account.java,運(yùn)行測試,然后運(yùn)行"Run Unit Tests"測試配置。
- 為了增加覆蓋率并且尋找額外的問題,參數(shù)化測試用例如下所示能夠達(dá)到自動(dòng)生成測試數(shù)據(jù)傳遞給現(xiàn)存測試用例:
a、右擊Jtest Example> examples.nbank>AccountTest.java> AccountTest>testApply(), 然后選擇 Jtest> Extract Parameterized Test Case。
b、在測試用例參數(shù)化向?qū)е?,選擇Generate Excel spreadsheet with heuristics and corner case values.這樣告訴Jtest生成corner用例值以及在運(yùn)行時(shí)不同的源輸入,并且生成具有所有測試數(shù)據(jù)的Excel電子表格。
c、點(diǎn)擊Next。
d、點(diǎn)擊Finish。
打開AccountTest.java來看參數(shù)化的結(jié)果。
雙擊Jtest Example> AccountTest.xls打開Excel文件。或者你安裝了Excel,右擊節(jié)點(diǎn),然后選擇Open With>System Editor。
通過選擇Jtest Example> examples.nbank>Account.java運(yùn)行參數(shù)化測試,然后運(yùn)行”Run Unit Tests”測試配置。
相似地,傳遞nulls時(shí)引發(fā)NullPointerExceptions。
首先,在第8行,null作為名字來傳遞,將引發(fā)NullPointerException。
第二,在第18行,null作為社會保險(xiǎn)號,將引發(fā)NullPointerException。
第三個(gè)NullPointerException指向代碼的邏輯錯(cuò)誤。在Customer類中調(diào)用equals方法時(shí)引發(fā)空指針異常,因?yàn)閒ield_ssn是空。如果去查看代碼,會發(fā)現(xiàn)field_ssn被初始化為null。在Customer的構(gòu)造函數(shù)中再?zèng)]有將此變量初始成其它的值。其結(jié)果是,它的值仍然為null,在equals方法中解引用時(shí)導(dǎo)致空指針異常。這是代碼中的一個(gè)缺陷需要修復(fù)。同樣的缺陷能夠被Jtest BugDetective或者自動(dòng)化的單元測試發(fā)現(xiàn)。
此練習(xí)向你展示了怎樣促使測試用例參數(shù)化通過一個(gè)手工編寫的JUnit測試用例來自動(dòng)生成測試數(shù)據(jù)?;蛘撸憧梢酝ㄟ^編輯Excel電子表格手動(dòng)添加測試數(shù)據(jù),或者將Jtest指向你自己的測試數(shù)據(jù)。
以上就是本次教程的內(nèi)容了,你也可以申請jtest試用>>,親自動(dòng)手試試哦。
查看更多parasoft測試產(chǎn)品
<詳詢客服>獲取更多活動(dòng)信息