zoukankan      html  css  js  c++  java
  • 测试套件TestSuite(半自动)

    测试套件,把测试套件理解为容器,容器里面存放是一个个的测试用例,然后执行这个容器中的测试用例。

    此时多个用例执行顺序:

    • 首先,收集用例

    • 将用例添加到容器中

    • 找个去执行容器中的用例,这个我们称为执行器

    TestSuite容器有两种方式添加用例:

    • suite.addTest(用例对象),每次往容器中添加一个

    • suite.addTests([用例对象1, 用例对象2, ......]),一次添加多个用例

    suite.countTestCases(),输出当前容器中有多少用例

    # ------------------ suite.addTest  ------------------------------
    import unittest
    class MyTestCase(unittest.TestCase):

    def case_01(self):
    self.assertTrue('FOO'.isupper()) # 'FOO'.isupper() --> True

    def case_02(self):
    self.assertTrue('Foo'.isupper())

    def case_03(self):
    self.assertTrue('bar'.islower())

    if __name__ == '__main__':
    # 1. 收集用例
    case_01 = MyTestCase('case_01')
    case_02 = MyTestCase('case_02')
    case_03 = MyTestCase('case_03')
    # 2. 创建一个容器,将第一步中的用例一一的 他添加到容器中
    # 2.1 创建容器
    suite = unittest.TestSuite()
    # 2.2 j添加用例到容器中
    suite.addTest(case_01)
    suite.addTest(case_02)
    suite.addTest(case_03)
    print(111111111, suite.countTestCases())
    # 3. 执行器执行容器中的用例
    unittest.TextTestRunner().run(suite)

    # ------------------ suite.addTests ------------------------------
    import unittest
    class MyTestCase(unittest.TestCase):

    def case_01(self):
    self.assertTrue('FOO'.isupper()) # 'FOO'.isupper() --> True

    def case_02(self):
    self.assertTrue('Foo'.isupper())

    def case_03(self):
    self.assertTrue('bar'.islower())

    if __name__ == '__main__':
    # 1. 收集用例
    case_01 = MyTestCase('case_01')
    case_02 = MyTestCase('case_02')
    case_03 = MyTestCase('case_03')
    # 2. 创建一个容器,将第一步中的用例一一的 他添加到容器中
    # 2.1 创建容器
    suite = unittest.TestSuite()
    # 2.2 j添加用例到容器中
    suite.addTest()
    suite.addTests([case_01, case_02,case_03])

    print(111111111, suite.countTestCases())
    # 3. 执行器执行容器中的用例
    unittest.TextTestRunner().run(suite)

    # ------------------- map ----------------------
    import unittest
    class MyTestCase(unittest.TestCase):

    def case_01(self):
    self.assertTrue('FOO'.isupper()) # 'FOO'.isupper() --> True

    def case_02(self):
    self.assertTrue('Foo'.isupper())

    def case_03(self):
    self.assertTrue('bar'.islower())

    if __name__ == '__main__':
    # 1. 收集用例
    obj = map(MyTestCase, ['case_01', 'case_02', 'case_03'])
    # 2. 创建一个容器,将第一步中的用例一一的 他添加到容器中
    # 2.1 创建容器
    suite = unittest.TestSuite()
    # 2.2 j添加用例到容器中
    suite.addTests(obj)

    print(111111111, suite.countTestCases())
    # 3. 执行器执行容器中的用例
    unittest.TextTestRunner().run(suite)
  • 相关阅读:
    【转】你必须知道的EF知识和经验
    【转】ASP.NET MVC中错误日志信息记录
    js获取当前iframe的ID
    【转】Code First 属性详解
    【转】MVC中code first方式开发,数据库的生成与更新(Ef6)
    【转】MVC form提交实体接收参数时空字符串值变成null
    【转】别跟我谈EF抵抗并发,敢问你到底会不会用EntityFramework
    Jquery中.attr()和.data()的区别
    关于在用curl函数post网页数据时,遇上表单提交 type为submit 类型而且没有name和id时可能遇到的问题及其解决方法
    浅谈 php 采用curl 函数库获取网页 cookie 和 带着cookie去访问 网页的方法!!!!
  • 原文地址:https://www.cnblogs.com/zhang-da/p/12291916.html
Copyright © 2011-2022 走看看