unittest的使用一

时间:2020-11-26 05:31:19

selenium:

(1).firefox官方下载驱动geckodriver,windows:放在\python36或者是27的目录下

  • Mac: /usr/local/bin

(2).firefox的版本必须是在48之后

(3).pip install selenium==3.11

1.unittest介绍:通过selenium的例子来讲解

unittest单元测试框架(其中包含测试固件(setUp()    tearDown() ), 测试报告,测试套件(testSuite),测试用例(testCase),断言)

2.例子:

(1)setUp  和 tearDown   这个属于测试固件,在每一个test之前和之后都运行一次

(2)setUpClass 和 tearDownClass,这个属于类方法,在类之前和之后运行一次

(3)测试必须以test开头

(4)测试的顺序是由ascii码从小到大运行   ord()查看ascii,比如:

unittest的使用一

(5)在主函数里面,通过unittest.main()方法运行

(6)类要继承unittest.TestCase这个类

unittest的使用一

3.测试套件,顺序执行

现将测试套件testSuite实例化(创建一个套件),然后把想跑的测试用例一个一个的add进去,运行测试套件:unittest.TextTestRunner(verbosity=2).run(suite)

先add那个,就先执行哪个。

unittest的使用一

4.按照测试类去执行。makeSuite()

将测试类,放入测试套件中,执行类里面所有的测试

unittest的使用一

5.忽略测试skip

一个case想要被忽略,那么,只需要田间@unittest.skip("理由")

unittest的使用一

6.将测试固件分离

当有很多个case的时候,有些一定要基于登陆进行,很多都需要继承登陆。接下来做一个简单的分离

(1)都用到的打开浏览器,关闭浏览器,分离出来

unittest的使用一

(2)点击百度新闻,继承init类

unittest的使用一

(3)百度搜索,继承init类

unittest的使用一

7.测试套件TestLoaderde的使用

unittest的使用一

8.测试套件discover()的使用:

根据正则匹配要跑当前目录下的 test_baidu_ 开头的脚本。

unittest的使用一

查看discover里面的参数:鼠标点击discover,键盘按下control键。进入里面查看:

unittest的使用一

总结:按照测试套件跑的话,大概流程都是:

1.首先定义一个测试套件(起名为suite),然后通过load的方法,这个suite里面主要包含了要跑的那些case

2.然后,运行这个suite里面的所有case。一般都是unittest.TextTestRunner().run(suite),调用TextTestRunner这个类主要是通过名字来跑。