美文网首页
selenium unittest实战(1)-unittest开

selenium unittest实战(1)-unittest开

作者: 行水坐云 | 来源:发表于2018-10-03 22:58 被阅读0次

一、项目目录结构

  1. 项目目录结构

1)顶级目录是项目名称。

2)二级目录是一级模块名称,如有login模块,notice模块等;同时把report报告目录和主程序runner.py也放在二级目录。

3)三级目录是python模块文件,建议取名为test_二级模块名.py。

在实际的测试过程中,很有可能模块有三级,甚至四级。建议规范到二级模块即可。三级和四级去模块化,直接在py文件写入到case中。


image.png
  1. pycharm实际目录结构
image.png

二、二级目录中模块名称必须是python package,不能是directory。否则unittest的 Test Discovery无法找到py模块文件。


image.png

三、三级目录的python模块文件必须取名为test_*.py


image.png

四、模块文件编写规范

1)模块文件最前面导入常用库

2)类名取名 Test_模块文件名,类名首字母大写;类必须继承自unittest.TestCase,类的实例就是一个case;类必须写类说明,方便后续测试报告的查看

3)合理使用初始化和清除

setUpClass:所有的case执行之前初始化,需用@classmethod装饰

tearDownClass:所有的case结束之后清除,需用@classmethod装饰

setUp:单个case执行之前初始化

tearDown:单个case结束之后清除

4)测试用例必须以test开发,否则无法自动识别;用例的执行顺序按照ASCII码执行,可以使用数字控制用例的执行顺序,如test_00_login;函数说明必须要写,方便后续测试报告的查看

5)可以使用name == ‘main’ 加入测试代码

6)unittest.main(verbosity=2) 可以自动加载测试用例,并执行;verbosity=2 代表详细的输出

test_notice.py 类似的规范,这里不再累述。

image.png
image.png
image.png
image.png

五、主程序

1)使用HTMLTestRunner第三方库生成html报告

2)使用discover根据匹配的规则,自动查找模块文件,发现里面的用例并加载

3)生成一个标准的测试报告:

I)存储在report目录下;

使用os库.getcwd获得当前主程序文件的路径

II)报告名类似:2018-10-03 16_06_49_result.html,包含系统时间。

标准的时间,使用time库的strftime方法

4)使用HTMLTestRunner,不要使用TextTestRunner,否则无法生成html报告

5)使用runner.run(discover)运行测试用例

image.png

六、测试报告


image.png

相关文章

网友评论

      本文标题:selenium unittest实战(1)-unittest开

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