一、实验题目 :软件测试
二、实验目的
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:
输入值:3 4 8 9 10 11
预期输出:3 4 8 9 10 11
2.测试用例2:
输入值:26 25 14 13 12 11
预期输出:11 12 13 14 25 26
3.测试用例3:
输入值:16 45 26 85 97 22
预期输出:16 22 26 45 85 97
4.测试用例4:
输入值:6
预期输出:6
5.测试用例5:
输入值:-5,-6,0,1,5 -4
预期输出:-6 -5 -4 0 1 5
六、单元测试结果截图
1.测试用例1结果:
2.测试用例2结果:
3.测试用例3结果:
4.测试用例4结果:
5.测试用例5结果:
6.测试结果全部通过
共进行了5组用例测试,测试数据均通过测试。
七、实验中遇到的问题及解决方法
问题一:代码中出现逻辑错误导致单元测试无法通过。
解决方法:首先要检查代码逻辑是否正确,可以通过调试工具逐步跟踪代码执行过程,查看变量取值是否符合预期。如果发现问题,及时修改代码并重新运行单元测试。
问题二:单元测试覆盖率不够,无法全面检验代码功能。
解决方法:可以通过工具查看代码覆盖率报告,找出未被测试到的代码块,补充相应的测试用例。确保尽可能覆盖所有代码路径,提高测试的全面性。
问题三:单元测试环境配置问题导致无法正常运行测试。
解决方法:检查测试环境的配置是否正确,确保所选用的测试框架(如Junit或unittest)与开发环境兼容。可以查阅相关文档或搜索解决方案,保证环境设置正确。
问题四:测试用例设计不合理或不充分。
解决方法:重新审视测试用例设计,确保覆盖各种边界情况和特殊情况。可以尝试使用边界值分析、等价类划分等测试方法,提高测试用例的有效性。
问题五:单元测试结果不稳定,有时通过有时不通过。
解决方法:检查代码中是否存在依赖外部因素的情况,如随机数、时间等。可以考虑对这些因素进行模拟或者使用mock对象进行测试,确保测试结果的稳定性。