首页 > 其他分享 >实验三:软件测试

实验三:软件测试

时间:2024-04-26 16:24:35浏览次数:20  
标签:self num 实验 测试 assertEqual line unittest 软件测试

一、实验内容:

对“输入的n个整数进行排序”的代码进行单元测试

二、设计单元测试用例

--基于Pycharm开发环境
--使用冒泡排序对列表进行升序排序
--利用unittest对所编写代码进行单元测试

测试代码如下:

import unittest
def line(num):
    n = len(num)
    for i in range(1, n):
        for j in range(0, n - 1):
            if num[i] < num[j]:
                temp = num[i]
                num[i] = num[j]
                num[j] = temp
    return num


class TestFun(unittest.TestCase):
    def setUp(self):
        print("测试1开始")

    def test_line(self):
        #测试1:空列表
        self.assertEqual(line([]),[])

        #测试2:一个元素的列表
        self.assertEqual(line([5]),[5])

        #测试3:已排好的列表
        self.assertEqual(line([1,2,3,4]),[1,2,3,4])

        #测试4:逆序的列表
        self.assertEqual(line([4,3,2,1]),[1,2,3,4])

        #测试5:包含重复元素的列表
        self.assertEqual(line([3,2,1,3,2,1]),[1,1,2,2,3,3])

        #测试6:随机顺序列表
        self.assertEqual(line([8,5,7,4,6,1,3,2]),[1,2,3,4,5,6,7,8])

    def tearDown(self):
        print("测试1结束")

class TestFun2(unittest.TestCase):
    def setUp(self):
        print("测试2开始")

    def test_line2(self):
        self.assertEqual(line([20,5,8,1,3,4,6,7,2,9,15,14,18,13,16,12,17,19,11,10]),[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20])

    def tearDown(self):
        print("测试2结束")

if __name__=='__main__':
    unittest.main()

生成报告代码如下:

import unittest
from Test import TestFun
from Test import TestFun2
from htmltestreport import HTMLTestReport

suite = unittest.TestSuite()
suite.addTest(unittest.makeSuite(TestFun))
suite.addTest(unittest.makeSuite(TestFun2))
# 实例化HTMLTestReport对象
report_path = "report.html"
report = HTMLTestReport(report_path, title='单元测试报告', description='test函数测试报告V1.0')

# 执行测试套件
report.run(suite)

三、单元测试结果截图

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

1.对排序函数结果的比较忘记设置返回值,使比较数据为空,导致测试失败,经改正解决。

2.设置的两个测试类错误的使用了相同的方法名导致测试错误,经改正解决。

3.设置的测试用例不能完全覆盖所有情况,经改正解决。

4.使用unittest生成测试报告时,由于只有一个测试类导致图表展示为空,设置两个测试类之后解决。

标签:self,num,实验,测试,assertEqual,line,unittest,软件测试
From: https://www.cnblogs.com/ariaZhang/p/18160328

相关文章

  • 实验三
    一、实验题目:软件测试二、实验目的1、熟悉开发环境下的自动化测试工具;1、利用自动化测试工具进行自动化单元测试。三、实验内容1、选择开发环境,IDEA或PYCHARM任选其一;2、基于所选择的开发环境实现对输入的n个整数进行排序的代码;3、对所编写代码设计测试用例;4、基于所选择......
  • 实验三
    一、实验题目:软件测试二、实验目的1、熟悉开发环境下的自动化测试工具;1、利用自动化测试工具进行自动化单元测试。三、实验内容1、选择开发环境,IDEA或PYCHARM任选其一;2、基于所选择的开发环境实现对输入的n个整数进行排序的代码;3、对所编写代码设计测试用例;4、基于所选择......
  • 实验三:软件测试
    一、实验题目:软件测试二、实验目的 1、熟悉开发环境下的自动化测试工具;1、利用自动化测试工具进行自动化单元测试。三、实验内容1、选择开发环境:IDEA2、基于所选择的开发环境实现对输入的n个整数进行排序的代码;3、对所编写代码设计测试用例;4、基于所选择的开发环境开展......
  • 实验三
    一、实验题目:软件测试二、实验目的1、熟悉开发环境下的自动化测试工具;1、利用自动化测试工具进行自动化单元测试。三、实验内容1、选择开发环境,IDEA或PYCHARM任选其一;2、基于所选择的开发环境实现对输入的n个整数进行排序的代码;3、对所编写代码设计测试用例;4、基于所选择......
  • 实验三——软件测试
    一、实验题目:软件测试二、实验目的1、熟悉开发环境下的自动化测试工具;1、利用自动化测试工具进行自动化单元测试。三、实验内容1、选择开发环境,IDEA或PYCHARM任选其一;2、基于所选择的开发环境实现对输入的n个整数进行排序的代码;3、对所编写代码设计测试用例;4、基于所选择......
  • 实验三:单元测试
    一、实验题目:软件测试二、实验目的1、熟悉开发环境下的自动化测试工具;1、利用自动化测试工具进行自动化单元测试。三、实验内容1、选择开发环境,IDEA或PYCHARM任选其一;2、基于所选择的开发环境实现对输入的n个整数进行排序的代码;3、对所编写代码设计测试用例;4、基于所选择......
  • 实验三
    一、实验题目:软件测试二、实验目的1、熟悉开发环境下的自动化测试工具;1、利用自动化测试工具进行自动化单元测试。三、实验内容1、选择开发环境,IDEA或PYCHARM任选其一;2、基于所选择的开发环境实现对输入的n个整数进行排序的代码;3、对所编写代码设计测试用例;4、基于所选择......
  • 实验三
    一、实验题目:软件测试二、实验目的1、熟悉开发环境下的自动化测试工具;1、利用自动化测试工具进行自动化单元测试。三、实验内容1、选择开发环境,IDEA或PYCHARM任选其一;2、基于所选择的开发环境实现对输入的n个整数进行排序的代码;3、对所编写代码设计测试用例;4、基于所选择......
  • 实验三:软件测试
    一、实验题目:软件测试二、实验目的1、熟悉开发环境下的自动化测试工具;1、利用自动化测试工具进行自动化单元测试。三、实验内容1、选择开发环境,IDEA或PYCHARM任选其一;2、基于所选择的开发环境实现对输入的n个整数进行排序的代码;3、对所编写代码设计测试用例;4、基于所选择......
  • 实验3:软件测试
    一、实验题目:软件测试**二、实验目的**1、熟悉开发环境下的自动化测试工具;1、利用自动化测试工具进行自动化单元测试。三、实验内容1、选择开发环境,IDEA或PYCHARM任选其一;2、基于所选择的开发环境实现对输入的n个整数进行排序的代码;3、对所编写代码设计测试用例;4、基于......