unittest介绍

 

unittest框架是python中一个标准的库中的一个模块,该模块包括许多的类如 test case类、test suit类、texttest runner类、texttest resuite类、test loadertest case类的话一个test case 就是一个测试用例,一个测试用例包含一个完成的流程,包括setup()表示初始化用例,run()表示运行,teardown表示还原测试场景。Test suit类在自动化中往往一个场景需要编写一个或者多个测试用例,那么就需要把这些多个用例一起执行,这时候需要把用例收集起来,就可以通过testsuite来处理,可以把testsulte当成一个用例容器,而在testsuite中就有一个addtest方法可以将用例添加到这个容器里面形成一个套件。Texttextrunner类该类是用来执行用例的,其中包含一个run()方法,该方法不但可以运行单个用例,也可以运行testsuite中的多个用例,并将执行结果保存到texttestresult里。Testloader类,该类帮我们搜索所有test开头的测试用例并将搜索到的方法用testsuite收集起来所以使用unittest框架编写测试用例的时候用例命名需要用test打头。Unittest框架结构分为三部分,首先是setup部分用于设计初始化环境的,该类中方法执行的时候都会先执行setup中的代码。运行部分:这里是编写测试用例的地方所有的用例命名都需要用test开头最后是teatdown部分:这里是用例执行完后还原测试环境的。

 

unittest框架原理:一个py文件里面有多个测试用例(testcase),通过testloader方法或者addtest方法加入到testsuit套件容器中。然后通过texttestrunner方法来执行测试用例,执行后然后,生成的测试结果自动保存在texttestresult中

 

一、框架的作用

1、随着用例的增加,我们就要考虑用例的编写的规范和组织,以便后续的维护,同时对后续用例执行完成生成报告的,这时我们就需要用到unittest框架进行用例管理

 

二、unittest框架中常见的模块

1、TestCase类(测试用例): 所有测试用例的基类,它是软件 测试中最基本的组成单元。

 

2、TestSuite类(测试套件):多个测试用例test case集合就是TestSuite,常用addTest()方法将一个测试用例添加到测试套件中(对一个功能的测试往往需要多测试用例的,可以把多的测试用例集合在一起执行,这就是TestSuite的概念。常用addTest()方法将一个测试用例添加到测试套件中)

 

3、TestLoader类:是用来搜索所有以test开头的测试用例,然后将其加入到testsuite中

 

4、TextTestRunner类:是用来执行测试用例的,其中的run(test)用来执行(是用来执行测试用例的,其中的run(test)用来执行TestSuite/TestCase。测试的结果会保存在TextTestResult实例中)

 

5、TextTestResult类(测试结果报告)测试的结果会保存在TextTestResult实例中

 

6、TestFixtrue类:测试准备前要做的工作和测试执行完后要做的工作.包括setUp()和tearDown()。通过覆盖TestCase的setUp和tearDown来实现。

 

三、框架编写用例的结构:后续使用框架来执行用例,那么在用例命名时都要以test打头如:test_case,结尾也一样

框架中用例执行顺序:setUp()-----testcase-----teardown()

 

猜你喜欢

转载自www.cnblogs.com/Mr-ZY/p/11696729.html