zoukankan      html  css  js  c++  java
  • 拆分测试用例

    calculator.py

    class Count:
    def __init__(self,a,b):
    self.a = int(a)
    self.b = int(b)

    #计算加法
    def add(self):
    return self.a + self.b

    #计算减法
    def sub(self):
    return self.a - self.b

    runtest.py

    import unittest
    # 加载测试文件
    import testadd
    import testsub

    # 构造测试集
    suite = unittest.TestSuite()
    suite.addTest(testadd.TestAdd("test_add"))
    suite.addTest(testadd.TestAdd("test_add2"))
    suite.addTest(testsub.TestSub("test_sub"))
    suite.addTest(testsub.TestSub("test_sub2"))
    if __name__ == '__main__':
    # 执行测试
    runner = unittest.TextTestRunner()
    runner.run(suite)

    """
    这样的拆分带来了好处,可以根据不同的功能创建不同的测试文件,甚至是不同的测试目录,
    测试文件中还可以将不同的小功能划分为不同的测试类,在类下编写测试用例,整体结构更加清晰。
    这样的设计看上去很完美,但依然没有解决添加用例的问题,当用例达到成百上千条时,
    在runtest.py文件中通过addTest()添加/删除测试用例就变得非常麻烦,
    那么有没有方法让unitest单元测试框架自动识别测试用例呢?答案是肯定的,
    TestLoader类中提供的discover()方法可以解决这个问题。
    """

    testadd.py

    from calculator import Count
    import unittest
    class TestAdd(unittest.TestCase):
    def setUp(self):
    print("test case start")

    def tearDown(self):
    print("test case end")

    def test_add(self):
    j = Count(2,3)
    self.assertEqual(j.add(),5)

    def test_add2(self):
    j = Count(41, 76)
    self.assertEqual(j.add(), 117)

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

    testsub.py

    from calculator import Count
    import unittest
    class TestSub(unittest.TestCase):
    def setUp(self):
    print("test case start")

    def tearDown(self):
    print("test case end")

    def test_sub(self):
    j = Count(2, 3)
    self.assertEqual(j.sub(),-1)

    def test_sub2(self):
    j = Count(71, 46)
    self.assertEqual(j.sub(),25)

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

     

  • 相关阅读:
    Windows 黑屏问题
    Java原生API操作XML
    Java使用Schema模式对XML验证
    使用Spring构建RMI服务器和客户端
    Eclipse多个console的使用
    jsr133-第一二章
    装个centos虚拟机之设置桥接网络
    Hadoop学习
    关于配置中心选型
    maven的SNAPSHOT版本和正式版本不同
  • 原文地址:https://www.cnblogs.com/zhang-da/p/12210647.html
Copyright © 2011-2022 走看看