美文网首页
python的unittest框架练习(二)

python的unittest框架练习(二)

作者: 简单生活101 | 来源:发表于2017-07-26 09:45 被阅读0次

单个添加case到TestSuite中,来执行测试

# TestSuite控制用例的执行

# 导入框架

importunittest

# 导入测试方法类

fromtest_mathsimportTestMaths

# 执行测试的流程处理

if__name__=='__main__':

# 按照一定的顺序来执行测试用例

# 实例化一个TestSuite

suite=unittest.TestSuite()

# 将用例单个添加进入到TestSuite中

suite.addTest(TestMaths("test_multiss"))

suite.addTest(TestMaths("test_add"))

# 按照定义好的顺序执行测试

runner = unittest.TextTestRunner(verbosity=2)

runner.run(suite)

执行结果如下,先执行第一个case再执行第二个case,这就是单个添加进入到TestSuite中按添加顺序执行测试

TestLoader的应用

写法一

# TestSuite控制用例的执行

# 导入框架

importunittest

# 导入测试方法类

fromtest_mathsimportTestMaths

# 执行测试的流程处理

if__name__=='__main__':

# 按照一定的顺序来执行测试用例

# 实例化一个TestSuite

suite=unittest.TestSuite()

# 使用addTests+TestLoader

# loadTestsFromName(),传入'模块名.TestCase名'

# TestLoader用来加载TestCase到TestSuite中,loadTestsFrom_()方法,是从各个地方查找TestCase,创建它们的实例,然后add到TestSuite中,再返回一个TestSuite实例

suite.addTests(unittest.TestLoader().loadTestsFromName('test_maths.TestMaths'))

# 执行测试,TestLoader的方法是无法对case进行排序的

runner = unittest.TextTestRunner(verbosity=2)

runner.run(suite)

执行结果如下,TestMaths中所有函数都执行了测试,但是是无顺序的

写法二

# TestSuite控制用例的执行

# 导入框架

importunittest

# 导入测试方法类

fromtest_mathsimportTestMaths

# 执行测试的流程处理

if__name__=='__main__':

# 按照一定的顺序来执行测试用例

# 实例化一个TestSuite

suite=unittest.TestSuite()

# 使用addTests+TestLoader

# loadTestsFromName(),传入'模块名.TestCase名'

# TestLoader用来加载TestCase到TestSuite中,loadTestsFrom_()方法,是从各个地方查找TestCase,创建它们的实例,然后add到TestSuite中,再返回一个TestSuite实例

#  loadTestsFromNames()跟loadTestsFromNames()是相同的功能,只不过它接收的是字符串列表

suite.addTests(unittest.TestLoader().loadTestsFromNames(['test_maths.TestMaths']))

# 执行测试,TestLoader的方法是无法对case进行排序的

runner = unittest.TextTestRunner()

runner.run(suite)

返回的结果如下图,TestMaths中所有函数都执行了测试,但是是无顺序的

写法三

# TestSuite控制用例的执行

# 导入框架

importunittest

# 导入测试方法类

fromtest_mathsimportTestMaths

# 执行测试的流程处理

if__name__=='__main__':

# 按照一定的顺序来执行测试用例

# 实例化一个TestSuite

suite=unittest.TestSuite()

# 使用addTests+TestLoader

# loadTestsFromTestCase()获取其中的所有测试方法

suite.addTests(unittest.TestLoader().loadTestsFromTestCase(TestMaths))

# 执行测试,TestLoader的方法是无法对case进行排序的

runner = unittest.TextTestRunner()

runner.run(suite)

返回的结果如下图,TestMaths中所有函数都执行了测试,但是是无顺序的

相关文章

网友评论

      本文标题:python的unittest框架练习(二)

      本文链接:https://www.haomeiwen.com/subject/yzlnkxtx.html