实验三——软件测试

一、实验题目 :软件测试

二、实验目的 

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]

  测试用例三:已经排序的数组

    输入值:[ 1, 2, 3, 4, 5 ]

    预期输出:[ 1, 2, 3, 4, 5 ]

  测试用例四:未排序的数组

    输入值:[ 13, 14, 11, 19, 17, 15, 22 ]

    预期输出:[ 11, 13, 14, 15, 17, 19, 22 ]

  测试用例五:包含重复元素的数组

    输入值:[ 1, 2, 4, 6, 8, 1, 2, 6 ]

    预期输出:[ 1, 1, 2, 2, 4, 6, 6, 8 ]

六、单元测试结果截图

  测试用例一:空数组 

  测试用例二:只有一个元素的数组

  测试用例三:已经排序的数组

  测试用例四:未排序的数组

  测试用例五:包含重复元素的数组

七、实验中遇到的问题及解决方法

1. 代码逻辑错误

  • 问题:冒泡排序的算法实现可能有误,导致排序不正确。
  • 解决方案:仔细检查代码是否遵循正确的算法步骤。

2. 边界条件未考虑

  • 问题:测试用例没有考虑到边界条件,如空列表或只有一个元素的列表。
  • 解决方案:编写测试用例时,要确保包含各种边界情况。对于冒泡排序,应测试空列表、只有一个元素的列表以及多个元素的列表。

3. 测试用例不全面

  • 问题:测试用例只覆盖了排序成功的情况,没有考虑到排序失败或异常的情况。
  • 解决方案:编写测试用例时,要考虑到所有可能的输入情况,包括正常输入、异常输入和边界输入。可以测试包含重复元素的列表、已经排序的列表、逆序的列表等。

4. 测试结果验证不正确

  • 问题:测试用例没有正确验证排序结果。
  • 解决方案:在测试用例中,你需要编写一个断言(assert)来验证排序后的列表是否按预期排序。可以使用Python内置的stored()函数或手动检查排序后的列表。

https://gitee.com/zchangxing/zhang-xians-code/blob/master/%E5%86%92%E6%B3%A1.py

posted @ 2024-05-07 16:30  zchanxig  阅读(18)  评论(0编辑  收藏  举报