selenium unittest实战(1)-unittest开发规范

一、项目目录结构

  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
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,993评论 19 139
  • 用到的组件 1、通过CocoaPods安装 2、第三方类库安装 3、第三方服务 友盟社会化分享组件 友盟用户反馈 ...
    SunnyLeong阅读 14,713评论 1 180
  • 工作岗位调研——谭盼:一、文案专员。岗位职责:1、协助上级撰写文案、报告等文件;2、公司对外媒体宣传的稿件撰写;3...
    cf08bb8ad6b0阅读 158评论 1 1
  • Mr.Colins 就是一位丑角,无时无地不在借助赞美别人来显示自己与凯瑟琳夫人那一点点所谓的亲密关系,更不用...
    李莲花多病阅读 222评论 0 1
  • ☽ 壹 自作多情的代名词:想多了! (男生篇) 下班顺路载女生回家,她对我说我谢谢你人真好。她一定对我有好感!刚入...
    动容交友阅读 5,110评论 14 62