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)
  • 相关阅读:
    JAVA 图形验证码在CentOS环境无法正常显示
    tomcat 测试环境配置在线浏览下载日志文件
    Jenkins+maven+SVN+Tomcat一键自动打包war部署到应用服务器
    mysql5 存储过程和触发器示例
    easyui datagrid 右冻结、右侧冻结、冻结右边列、冻结右侧列
    myeclipse 2017+ 中的FreeMaker 渲染出错 Encountered "-", but was expecting one of: "=" "..." "," ")" ">" ---- FTL stack trace ("~" means nesting-related):
    自动化运维工具 ansible 安装应用
    CentOS7 + JDK1.8 + Tomcat8.5 实现HTTP/2.0、 http2 服务
    flume-1.9.0 与 hadoop-3.3.0 HDFS 对接部署
    hive-3.1.2 整合进 hadoop-3.3.0 + hbase-2.2.4
  • 原文地址:https://www.cnblogs.com/zhang-da/p/12291916.html
Copyright © 2011-2022 走看看