利用python进行测试时,测试用例的加载方式有2种:

一种是通过unittest.main()来启动所需测试的测试模块;

一种是添加到testsuite集合中再加载所有的被测试对象,而testsuit里存放的就是所需测试的用例,下面分别列出3种方法的具体使用方式:

1、通过unittest.main()来执行测试用例的方式:

import unittest 
class uctestcase(unittest.testcase):
  def setup(self):
    #测试前需执行的操作
    .....   
  def teardown(self):
    #测试用例执行完后所需执行的操作
    .....   
  # 测试用例1
  def testcreatefolder(self):
    #具体的测试脚本
    ......   
  # 测试用例2
  def testdeletefolder(self):
    #具体的测试脚本
    ......    
if __name__ == "__main__":
  unittest.main()

2、通过testsuit来执行测试用例的方式:

import unittest 
# 执行测试的类
class uctestcase(unittest.testcase):
  def setup(self):
    #测试前需执行的操作
    .....    
  def teardown(self):
    #测试用例执行完后所需执行的操作
    .....
    
  # 测试用例1
  def testcreatefolder(self):
    #具体的测试脚本
    ......   
  # 测试用例2
  def testdeletefolder(self):
    #具体的测试脚本
    ......    
if __name__ == "__main__":
  # 构造测试集
  suite = unittest.testsuite()
  suite.addtest(uc7testcase("testcreatefolder"))
  suite.addtest(uc7testcase("testdeletefolder")) 
  # 执行测试
  runner = unittest.texttestrunner()
  runner.run(suite)

3、通过testloader方式:

import unittest 
class testcase1(unittest.testcase):
  #def setup(self):
  #def teardown(self):
  def testcase1(self):
    print 'aaa'   
  def testcase2(self):
    print 'bbb'
 
class testcase2(unittest.testcase):
  #def setup(self):
  #def teardown(self):
  def testcase1(self):
    print 'aaa1' 
  def testcase2(self):
    print 'bbb1'
    
if __name__ == "__main__":
  #此用法可以同时测试多个类
  suite1 = unittest.testloader().loadtestsfromtestcase(testcase1) 
  suite2 = unittest.testloader().loadtestsfromtestcase(testcase2) 
  suite = unittest.testsuite([suite1, suite2]) 
  unittest.texttestrunner(verbosity=2).run(suite)

下面针对上述脚本中应用到的unittest模块下的几个成员进行简单的介绍,以便于理解上述代码:

  • testcase:所有测试用例的基本类,给一个测试方法的名字,就会返回一个测试用例实例;
  • testsuit:组织测试用例的实例,支持测试用例的添加和删除,最终将传递给 testrunner进行测试执行;
  • texttestrunner:进行测试用例执行的实例,其中text的意思是以文本形式显示测试结果。测试的结果会保存到texttestresult实例中,包括运行了多少测试用例,成功了多少,失败了多少等信息;
  • testloader:用来加载testcase到testsuite中的,其中有几个 loadtestsfrom__()方法,就是从各个地方寻找testcase,创建它们的实例,然后add到testsuite中,再返回一个testsuite实例;

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持www.887551.com。