一、做自动化测试,简单来说4点
1.明确测试对象
2.编写测试用例
3.组织测试用例
4.执行测试用例输出测试结果报告
那么对于自动化框架来说,我们要做到的是,如何完成这些工作,具体对应到自动化框架unittest我们来大致介绍并使用下。
一、unittest工作原理
unittest最核心的四部分是:TestCase,TestSuite,TestRunner,TestFixture
TestCase:用户自定义的测试case的基类,编写测试case的类需要继承它
TestSuite:测试用例集合,可以通过addTest()方法手动增加Test Case,也可以通过TestLoader自动添加Test Case,TestLoader在添加用例时,会没有顺序。
TestRunner:运行测试用例的驱动类,可以执行TestCase,也可以执行TestSuite,执行后TestCase和TestSuite会自动管理TESTResult。
TestFixture:简单来说就是做一些测试过程中需要准备的东西,比如创建临时的数据库,文件和目录等,其中setUp()和setDown()是最常用的方法
总结来说,整个的流程就是首先要写好TestCase,然后由TestLoader加载TestCase到TestSuite,然后由TestTestRunner来运行TestSuite,运行的结果保存在TextTestReusult中,整个过程集成在unittest.main模块中。
2.创建一个测试用例的testMathFunc.py文件
用例执行结果如下:

三.现在我们把测试结果用TestSuite组织起来,我们就要用到TestCase,添加到TestCaseDE中的case是会按照添加的顺序执行的。创建testSuite.py文件。
直接运行testSuite.py文件,输出测试结果报告如下:

小结:
1、unittest是python自带的单元测试框架,可以直接import到自己的环境
2、unittest流程:写好TestCase,然后由TestLoader加载TestCase到TestSuite,然后由TextTestRunner来运行TestSuite,运行的结果保存在TextTestResult中,我们通过命令行或者unittest.main()执行时,main会调用TextTestRunner中的run来执行,或者我们可以直接通过TextTestRunner来执行用例。
3、想要被识别为测试用例,那么需要编写一个测试类,这个测试类要继承TestCase,类中的测试方法即单条测试用例都需要以test开头。
4、verbosity参数可以控制执行结果的输出:
5、可以通过addTest和addTests向suite中添加case或suite,可以用TestLoader的loadTestsFrom__()方法。
6、用 setUp()、tearDown()、setUpClass()以及 tearDownClass()可以在用例执行前布置环境,以及在用例执行后清理环境
7、我们可以通过skip,skipIf,skipUnless装饰器跳过某个case,或者用TestCase.skipTest方法。
版权声明:
本文来源网络,所有图片文章版权属于原作者,如有侵权,联系删除。
本文网址:https://www.mushiming.com/mjsbk/9317.html