一、實驗題目 :軟體測試
二、實驗目的
1、熟悉開發環境下的自動化測試工具;
1、利用自動化測試工具進行自動化單元測試。
三、實驗內容
1、選擇開發環境:IDEA
2、基於所選擇的開發環境實現對輸入的n個整數進行排序的程式碼;
3、對所編寫程式碼設計測試用例;
4、基於所選擇的開發環境開展單元測試。
IDEA環境:
利用Junit對所編寫程式碼進行單元測試
https://blog.csdn.net/antony9118/article/details/51736135
PYCHARM環境:
利用unittest對所編寫程式碼進行單元測試
https://zhuanlan.zhihu.com/p/688994644
四、實驗要求
1、預先準備的程式碼要求獨立編寫,嚴禁抄襲,具體排序演算法可以自由選擇一種;
2、利用平臺提供的單元測試工具對程式碼中的方法或函式進行單元測試,擷取測試結果。
五、設計單元測試用例
用例一:
輸入值:空陣列{}
預期輸出:
這個測試驗證了當傳入的陣列為空時,氣泡排序方法是否能夠正確執行而不丟擲異常。這是邊界條件測試的一個例子,用於確保演算法能夠處理極端情況。
用例二:
輸入值:單個元素5
預期輸出:5
這個測試確保了當陣列中只有一個元素時,排序方法仍然能夠正常工作,而不會引起不必要的操作或錯誤。
用例三:
輸入值:排序好的陣列{5,6,7,8,9}
預期輸出:5 6 7 8 9
這個測試檢查當陣列已經排序時,氣泡排序方法是否仍然能夠正確執行,並且不會破壞現有的順序。它驗證了演算法的魯棒性。
用例四:
輸入值:未排序的陣列{15, 3, 38, 44, 22}
預期輸出:3 15 22 38 44
驗證錯誤:
這是測試氣泡排序演算法的核心功能的測試。它使用一個未排序的陣列來驗證演算法是否能夠正確地將陣列元素排序。
用例五:
輸入值:帶負數的陣列{-5, -13, -8, -4, -72}
預期輸出:-72 -13 -8 -5 -4
這個測試確保了氣泡排序演算法能夠處理包含負數的陣列,並正確地對它們進行排序。它驗證了演算法對不同型別資料的處理能力。
用例六:
輸入值:混合數的陣列 {5, -3, 8, 0, 2, -1}
預期輸出:-3 -1 0 2 5 8
這個測試進一步擴充套件了演算法處理不同型別資料的能力,使用包含正數和負數的混合陣列來驗證排序的正確性。
六、單元測試結果截圖
七、實驗中遇到的問題及解決方法
問題1:下載juint失敗
解決方法:上b站搜尋影片講解一步一步跟著做
問題2:測試用例沒有覆蓋所有可能的輸入情況和邊界條件,導致某些潛在問題沒有被發現。
解決方法:設計全面的測試用例,包括空陣列、單個元素陣列、已排序陣列、未排序陣列、包含正負數或特殊字元的陣列等。同時,注意測試邊界條件,如最大和最小元素的排序情況。