Parasoft C++test使用教程:關(guān)于測試用例(三)
今天給大家?guī)黻P(guān)于測試用例的最后一部分——全局變量獲得輸入及樁函數(shù)的聯(lián)合使用。
源代碼如圖:
對于main函數(shù),data_deal函數(shù)只提供了一個(gè)出口,那么問題來了,兩個(gè)if語句只能執(zhí)行一個(gè),所以要通過建立用戶自定義的樁函數(shù),當(dāng)執(zhí)行不同的測試用例時(shí)可以讓用戶自定義的樁函數(shù)返回不同的值,以滿足兩個(gè)條件判斷語句全覆蓋。下圖為自定義的的樁函數(shù):
新建用戶自定義樁函數(shù)之后,重新執(zhí)行測試用例,可以觀察到:
自定義樁函數(shù)后我們再執(zhí)行單元測試,兩個(gè)條件判斷語句都有執(zhí)行到了,但沒執(zhí)行到case語句,這是因?yàn)閐ata_deal函數(shù)的樁函數(shù)返回10的時(shí)候測試用例的預(yù)置條件i不等于0,1,2。這個(gè)時(shí)候我們就要再次修改樁函數(shù)和新建測試用例或者修改測試用例,以達(dá)到每條語句都至少執(zhí)行一次的目的。
修改后的自定義樁函數(shù)如圖所示:
這個(gè)時(shí)候還需要修改測試用例
把TestSuite_fun2_c_92e58086_test_main_2,TestSuite_fun2_c_92e58086_test_main_3,TestSuite_fun2_c_92e58086_test_main_4,三個(gè)測試用例中的i依次改為0,1,2。再次執(zhí)行單元測試,可以觀察到:
parasoft開年大促85折起<詳詢客服>