原創(chuàng)|使用教程|編輯:蔣永|2017-02-22 10:09:25.000|閱讀 1831 次
概述:單元測(cè)試和測(cè)試用例的生成可謂是整個(gè)測(cè)試過(guò)程的核心和重點(diǎn),今天就給大家解析這兩個(gè)概念,讓大家對(duì)這兩點(diǎn)有更加深刻的理解
# 界面/圖表報(bào)表/文檔/IDE等千款熱門(mén)軟控件火熱銷售中 >>
相關(guān)鏈接:
單元測(cè)試和測(cè)試用例的生成可謂是整個(gè)測(cè)試過(guò)程的核心和重點(diǎn),今天就給大家解析這兩個(gè)概念,讓大家對(duì)這兩點(diǎn)有更加深刻的理解,當(dāng)然你也可以在評(píng)論區(qū)發(fā)表你的看法喲~
“單元測(cè)試”是指在最簡(jiǎn)單的功能點(diǎn)測(cè)試軟件代碼,該功能點(diǎn)通常是單個(gè)類,或者一個(gè)函數(shù)。單元測(cè)試通常由開(kāi)發(fā)人員在項(xiàng)目開(kāi)發(fā)周期內(nèi)執(zhí)行,而不是在 QA 階段進(jìn)行。通過(guò)使用單元測(cè)試,您可以確保應(yīng)用程序構(gòu)建塊在集成之前的可靠性,從而提高整個(gè)應(yīng)用程序的質(zhì)量。如果測(cè)試進(jìn)行得早,則識(shí)別和修正缺陷的難度通常較低,耗時(shí)也較少。
手動(dòng)單元測(cè)試通常涉及手工編寫(xiě)測(cè)試集、指定輸入數(shù)據(jù)以及為缺少的函數(shù)提供樁函數(shù)。 Jtest 可將這些任務(wù)自動(dòng)化,以使得單元測(cè)試更有效率,更具一致性。
通常,單元測(cè)試可能包括:
Jtest 可以執(zhí)行上述所有類型的單元測(cè)試;可以自定義所執(zhí)行測(cè)試的級(jí)別和范圍,以便體現(xiàn)您的需求和測(cè)試習(xí)慣。
當(dāng)您運(yùn)行 Jtest 自動(dòng)生成的測(cè)試用例時(shí),請(qǐng)執(zhí)行異常測(cè)試。此類測(cè)試可暴露意料之外的異常,并檢查類在結(jié)構(gòu)方面是否合理。可靠性測(cè)試能否成功,取決于代碼是否能完全覆蓋,因此必要時(shí),您可能會(huì)想要擴(kuò)展自動(dòng)生成的測(cè)試用例,以增強(qiáng)代碼覆蓋率。Jtest 可測(cè)量測(cè)試覆蓋率,以有助于您評(píng)估覆蓋率,并確定哪些地方需要附加測(cè)試。
當(dāng)您擴(kuò)展自動(dòng)生成的測(cè)試用例,以驗(yàn)證類的公共接口是否按照規(guī)范所述運(yùn)行時(shí),請(qǐng)執(zhí)行功能測(cè)試。此外,如果你的規(guī)格說(shuō)明公共接口需要由合同來(lái)設(shè)計(jì)。但您執(zhí)行自動(dòng)生成的單元測(cè)試用例,Jtest執(zhí)行功能性測(cè)試。更重要的是,Jtest Tracer可以自動(dòng)生成符合實(shí)際的功能性測(cè)試測(cè)試用例,這些測(cè)試用例在運(yùn)行應(yīng)用程序的過(guò)程中捕獲代碼的行為(例如,使用用例執(zhí)行應(yīng)用程序)
回歸測(cè)試涉及到定期測(cè)試改進(jìn)的代碼庫(kù),其做法是運(yùn)行所有可用的測(cè)試用例,并檢查預(yù)期的結(jié)果是否發(fā)生更改。在當(dāng)前測(cè)試的測(cè)試用例結(jié)果與預(yù)期的測(cè)試用例結(jié)果不匹配時(shí),Jtest 會(huì)報(bào)告錯(cuò)誤消息。
此外,Jtest可以配置來(lái)觀察內(nèi)存使用情況和報(bào)告任何檢測(cè)到的內(nèi)存泄露問(wèn)題。如果內(nèi)存泄露檢測(cè)是可用的,在測(cè)試用例執(zhí)行過(guò)程中,Jtest監(jiān)控對(duì)象分配事件和對(duì)象銷毀事件。如果它被分配了但在測(cè)試結(jié)束時(shí),垃圾回收器沒(méi)有銷毀該對(duì)象,則該對(duì)象被認(rèn)為是泄露的。每一個(gè)測(cè)試被執(zhí)行三次,以確保泄露的內(nèi)存沒(méi)有初始化或緩存。如果Jtest確定泄露發(fā)生,它報(bào)告三次測(cè)試執(zhí)行中最小的泄露和標(biāo)記哪些內(nèi)存被分配的行的位置。
編寫(xiě)單元測(cè)試是一項(xiàng)重要任務(wù),它確保了代碼的質(zhì)量。單元測(cè)試不僅能暴露錯(cuò)誤和功能問(wèn)題,而且能作為常規(guī)的回歸測(cè)試運(yùn)行,以有助于您確定代碼的添加/修改是否破壞了現(xiàn)有功能,或者是否造成意外的更改。
不過(guò),編寫(xiě)測(cè)試是一項(xiàng)耗時(shí)的工作,如果不仔細(xì)就可能會(huì)遺漏重要的情況。Jtest 提供的單元測(cè)試支持,可幫助開(kāi)發(fā)人員和測(cè)試人員非常快速地創(chuàng)建良好的單元測(cè)試。Jtest 之所以能提供幫助,是因?yàn)樗詣?dòng)生成許多單元測(cè)試,允許用戶自定義測(cè)試生成和執(zhí)行,以符合他們的參數(shù)選擇和需求。
Jtest 自動(dòng)生成大量測(cè)試用例,這些測(cè)試用例會(huì)試圖執(zhí)行代碼中的所有不同路徑,然后保存實(shí)際的測(cè)試用例結(jié)果。從本質(zhì)上來(lái)講,這些測(cè)試用例就好比在對(duì)代碼的當(dāng)前狀態(tài)照 x 射線,在修改代碼之前拍攝代碼運(yùn)行情況的快照。它們還有助于識(shí)別可能影響代碼可靠性和安全性的潛在異常狀況。
Jtest 可以為任何Java代碼生成從單個(gè)函數(shù)到整個(gè)項(xiàng)目的測(cè)試用例。通過(guò)在Jtest 中運(yùn)行這些測(cè)試用例,您可以驗(yàn)證類的健壯性,識(shí)別可能造成程序進(jìn)入不一致?tīng)顟B(tài)或終止?fàn)顟B(tài)的輸入。您可以自定義預(yù)先配置的測(cè)試方式、以及特定的測(cè)試生成設(shè)置。
測(cè)試用例可以用C 或 C++ 源碼來(lái)實(shí)現(xiàn)和保存(所用語(yǔ)言取決于要測(cè)試的原始源碼)。這些測(cè)試用例使用與通用的 CppUnit 格式類似的格式。C++test 的測(cè)試提供了比 CppUnit 更廣泛的功能,包括可以測(cè)試C代碼、并在測(cè)試框架內(nèi)提供對(duì)私有和保護(hù)成員數(shù)據(jù)以及成員函數(shù)進(jìn)行訪問(wèn)的功能。
現(xiàn)有 CppUnit 測(cè)試用例可以導(dǎo)入到 C++test 中,與自動(dòng)生成的測(cè)試用例配合使用。可以通過(guò)用戶定義的測(cè)試用例對(duì)測(cè)試套件進(jìn)行擴(kuò)展,以改進(jìn)測(cè)試覆蓋率并驗(yàn)證特定的功能;可以通過(guò)修改自動(dòng)生成的測(cè)試用例、或定義新的測(cè)試用例,來(lái)添加這些測(cè)試。對(duì)于回歸測(cè)試,可以自動(dòng)驗(yàn)證和配置任何可用的測(cè)試用例。通過(guò)保存所有可用的測(cè)試用例,并充分將它們用于自動(dòng)回歸測(cè)試,您可以建立一個(gè)回歸測(cè)試基礎(chǔ)結(jié)構(gòu),快速地識(shí)別因代碼修改而引入的意外功能更改和異常。
自動(dòng)測(cè)試用例生成的功能,允許您在更短的時(shí)間內(nèi)創(chuàng)建更有效的測(cè)試套件。測(cè)試用例的開(kāi)發(fā),歷來(lái)是單元測(cè)試過(guò)程中最耗時(shí)的部分。通過(guò)使用 Jtest,您無(wú)需編寫(xiě)任何代碼以生成一組使用每一個(gè)類的基礎(chǔ)測(cè)試用例,您可以通過(guò)向自動(dòng)生成的測(cè)試用例添加少量代碼來(lái)創(chuàng)建更多的測(cè)試用例。通常,您無(wú)需為簡(jiǎn)單方法編寫(xiě)測(cè)試用例而擔(dān)心,可以將資源集中于更復(fù)雜方法的擴(kuò)展/添加測(cè)試。
而且,自動(dòng)測(cè)試用例生成可通過(guò)以下兩種重要途徑,有助于您預(yù)防發(fā)生錯(cuò)誤:
查看更多parasoft測(cè)試產(chǎn)品
獲取更多活動(dòng)信息
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn