任務(wù)二:單元測試
1. 官方文件

1.1 概述
按照要求,執(zhí)行單元測試,編寫?java 應(yīng)用程序,按照要求的覆蓋方法設(shè)計測試數(shù)據(jù),使用JUnit框架編寫測試類對程序代碼進(jìn)行測試,對測試執(zhí)行結(jié)果進(jìn)行截圖,將相關(guān)代碼和相關(guān)截圖粘貼到單元測試報告中。
1.2 題目要求

題目參考樣例如下,正式賽卷中具體題目設(shè)置及題目數(shù)量以專家組設(shè)計為準(zhǔn):
1.3 技術(shù)參數(shù)選取范圍

1)語句覆蓋法、2)判定覆蓋法、3)條件覆蓋法、4)判定條件覆蓋法、5)條件組合覆蓋法、6)路徑覆蓋法、7)基本路徑覆蓋法、8)JUnit基礎(chǔ)注解、9)JUnit assert斷言方法、10)JUnit assertThat一般匹配符斷言、11)JUnit assertThat字符串相關(guān)匹配符斷言、12)JUnit assertThat數(shù)值相關(guān)匹配符斷言、13)JUnit assertThat集合相關(guān)匹配符斷言、14)JUnit參數(shù)化設(shè)置、15)JUnit測試套件、16)JUnit測試優(yōu)先級順序、17)JUnit TestRunner使用、18)JUnit內(nèi)置Rule中TestName使用、19)JUnit內(nèi)置Rule中TemporaryFolder使用、20)JUnit內(nèi)置Rule中ExternalResource使用、21)JUnit測試private方法。
1.4 單元測試報告

1.4.1?程序源代碼
【在下方框中粘貼程序代碼的源代碼】
1.4.2 測試數(shù)據(jù)和測試方法代碼
【設(shè)計的測試用例數(shù)據(jù),并將測試類中使用該條測試數(shù)據(jù)的測試方法粘貼到下方代碼區(qū)域】
①?第1組數(shù)據(jù)測試類方法
【粘貼測試類中使用該條測試數(shù)據(jù)的測試方法,包含測試數(shù)據(jù),斷言等】
②?第2組數(shù)據(jù)測試類方法
【粘貼測試類中使用該條測試數(shù)據(jù)的測試方法,包含測試數(shù)據(jù),斷言等】
③?第X組數(shù)據(jù)測試類方法
【粘貼測試類中使用該條測試數(shù)據(jù)的測試方法,包含測試數(shù)據(jù),斷言等】
1.4.3?JUnit Test執(zhí)行結(jié)果截圖
【截取JUnit Test執(zhí)行結(jié)果】
2. 文件內(nèi)容解析

通過官方文件對于 "任務(wù)二" 相關(guān)內(nèi)容的描述,可以梳理出需要掌握的知識點和技能點,不難看出單元測試任務(wù)涉及到的內(nèi)容比較多,但好在要求不是很高……
2.1 相關(guān)知識點

Java 編程語言:因為官方文件中明確指出要使用 Java 語言編寫源代碼和測試代碼,但是 官方并沒有給出 Java 語言的知識范圍,因為這個范圍確實不好界定。
(Java 菜鳥教程,比較容易入門)https://www.runoob.com/java/java-tutorial.html

JUnit 測試框架:一款基于 Java 語言的測試框架,可以方便完成單元測試工作,關(guān)于這個框架的知識范圍是確定的,因為在官方文件?"技術(shù)參數(shù)選取范圍" 章節(jié)中給出了明確的范圍。

單元測試方法:比賽中需要設(shè)計測試用例,構(gòu)造測試數(shù)據(jù)。按照不同的測試方法就會設(shè)計出不同的測試用例,所以需要熟悉每一種測試方法的特點和原理,好在官方給出了測試方法的范圍:1)語句覆蓋法、2)判定覆蓋法、3)條件覆蓋法、4)判定條件覆蓋法、5)條件組合覆蓋法、6)路徑覆蓋法、7)基本路徑覆蓋法。

總而言之:① 參賽選手根據(jù)題目要求編寫 Java 源代碼 ;② 根據(jù)題目要求的測試方法編寫測試用例、構(gòu)造測試數(shù)據(jù);③ 借助 Junit 測試框架完成測試用例的代碼實現(xiàn);④ 根據(jù)題目要求,提交源代碼、測試代碼和 JUnit 測試結(jié)果。
2.2?相關(guān)軟件環(huán)境

JDK:JDK 是 Java 程序開發(fā)和運行的工具包單元測試使用 Java 語言編寫,所以需要提前在比賽環(huán)境中安裝 JDK。版本,JDK-14.0.2_Windows-X64_bin.exe。

Eclipse:Eclipse 是 Java 的集成開發(fā)環(huán)境,可以方便 Java 代碼的編寫、運行和調(diào)試工作。版本,Eclipse_Version:2022-03(4.23.0)。

junit-4.13.2.jar、hamcrest-core-1.3.jar、hamcrest-library-1.3.jar:這就前面介紹過的 JUnit 測試框架,它是以 Java 第三方的形式出現(xiàn)。

Windows:系統(tǒng)軟件,版本W(wǎng)indows10 64位。
2.3 單元測試環(huán)境搭建

動手搭建環(huán)境的內(nèi)容,不太適合用文字描述,大家可以瀏覽以下視頻,完成單元測試任務(wù)環(huán)境的搭建。

第一步:安裝 JDK
第二步:安裝 eclispe
第三步:eclispe 配置?JDK
第四步:eclispe 配置?JUnit
2.4 eclipse 基本配置

配置 eclipse 代碼自動補全
打開 Windows→Preferences→Java→Editor→Content Assist
在 Auto Activation triggers for java

3. GZ034 軟件測試賽題第?1-10?套
