一、实验题目 :软件测试
二、实验目的
1、熟悉开发环境下的自动化测试工具;
1、利用自动化测试工具进行自动化单元测试。
三、实验内容
1、选择开发环境,IDEA或PYCHARM任选其一;
2、基于所选择的开发环境实现对输入的n个整数进行排序的代码;
3、对所编写代码设计测试用例;
4、基于所选择的开发环境开展单元测试。
IDEA环境:
利用Junit对所编写代码进行单元测试
https://blog.csdn.net/antony9118/article/details/51736135
PYCHARM环境:
利用unittest对所编写代码进行单元测试
https://zhuanlan.zhihu.com/p/688994644
四、实验要求
1、预先准备的代码要求独立编写,严禁抄袭,具体排序算法可以自由选择一种;
2、利用平台提供的单元测试工具对代码中的方法或函数进行单元测试,截取测试结果。
五、设计单元测试用例
测试用例1:输入空列表
预期输入:[]
预期结果:[]
用例1与预期结果一致
测试用例2:输入逆序列表
预期输入:5 4 3 2 1
预期结果:1 2 3 4 5
用例2与预期结果一致
测试用例3:输入正序列表
预期输入:1 2 3 4 5
预期结果:1 2 3 4 5
用例3与预期结果一致
测试用例4:输入随机列表
预期输入:8 3 6 1 9 2 7 5 4
预期结果:1 2 3 4 5 6 7 8 9
用例4与预期结果一致
测试用例5:输入只含有一个元素的列表
预期输入:5
预期结果:5
用例5与预期结果一致
六、单元测试结果截图
七、实验中遇到的问题及解决方法
上述测试用到的是白盒测试。
白盒测试(White-box Testing)又称为结构测试、透明盒测试、开放盒测试、逻辑驱动测试或基于代码的测试。白盒测试是一种测试用例设计方法,通过检查软件内部的逻辑结构,对软件中的逻辑路径进行覆盖测试,在程序不同地方设立检查点,检查程序的状态,以确定实际运行状态与预期状态是否一致。
在提供的test_shell_sort.py中,测试代码直接访问了shell_sort函数的内部逻辑,通过传递不同的输入数组并检查其输出,以确保函数按预期工作。
问题及解决办法如下:
1.运行单元测试时提示"Empty test suite"(空测试)
解决办法:检查测试函数是否以"test"开头,unittest"框架只识别以"test"开头的函数作为测试用例。
2.运行unittest时提示找不到测试文件。
解决办法:
确认测试文件的目录和文件名无误。
检查测试文件是否被意外地从项目中删除或未正确添加到项目中。
如果项目中同时使用了unittest,确保在PyCharm中选择了正确的测试框架来运行测试。