自动采集编写(actions文件夹自动化测试框架一步)
优采云 发布时间: 2021-12-30 16:18自动采集编写(actions文件夹自动化测试框架一步)
这两天用python2写了一个自动化测试框架,名字叫Auty。它已准备好用于 Web 界面测试。下面是Auty框架的分步搭建过程——
首先感谢朱博大哥的指教、交流和帮助!
auty文件夹结构介绍
1. actions文件夹:收录
业务相关的脚本文件,收录
可复用的方法,可以根据不同的业务在actions文件夹下创建不同的业务文件夹;
2. 常量文件夹:收录
常量初始化的python脚本文件。根据业务分工,可以创建子文件夹或多个常量文件;
3. 数据文件夹:收录
用于测试的数据;
4. lib文件夹:收录
支持框架运行的python文件;
5. 日志文件夹:收录
运行测试过程中产生的日志文件;
6. results文件夹:收录
测试结果文件;
7. 脚本文件夹:收录
脚本文件夹和选择文件夹;
1)scripts 文件夹收录
测试脚本(可以根据业务分为多个子目录);
2)selections 文件夹收录
套件文件(包括需要执行的脚本路径的集合);
8. utils文件夹:收录
与业务逻辑无关的脚本文件,收录
可复用的方法;
auty文件结构介绍
1. 在 Auty 文件夹下:
1)__init__.py 文件:包结构的必要文件(以下所有涉及可调用脚本的文件夹都需要该文件);
2)config.txt 文件:Auty 框架配置描述文件;
3)recovery.py 文件:垃圾代码恢复文件(用于恢复由于测试执行过程中失败而自动删除失败的自动生成代码);
4)requirements 文件:收录
框架需要安装的python库信息;
5)setup.py文件:执行脚本安装需求文件中收录
的python库;
6)start.py 文件:执行脚本启动界面自动化测试;
2. lib 文件夹:
1)exe_deco.py 文件:收录
修改脚本运行时方法的文件;
2)execute_selection.py 文件:收录
了suite集合下运行脚本方法的文件;
3)generate_html.py文件:收录
根据生成的csv格式测试结果文件生成html类型测试结果文件的方法的文件;
4)generate_result.py文件:收录
生成csv格式测试结果方法的文件;
5)read_selection.py 文件:收录
读取可执行脚本列表的方法的文件;
6)recovery_code.py 文件:收录
垃圾代码恢复方法的文件;
7)write_log.py 文件:收录
生成日志文件的方法的文件;
3. 脚本文件夹下:
1)create_selection.py 文件:收录
创建套件文件的方法的文件(all_scripts_selection.txt);
自动步骤
1. 运行Auty/setup.py文件;
2. 编写接口测试python脚本,放在Auty/scripts/scripts目录(或子目录);
3. 运行Auty/scripts/create_selection.py文件,生成Auty/scripts/all_scripts_selection.txt文件;
4. 修改Auty/scripts/all_scripts_selection.txt文件,自定义test_selection.txt文件(任意名称)放到Auty/scripts/selections文件夹下;
5. 运行Auty/start.py文件,启动接口自动测试;
6. 在Auty/results文件夹下生成的测试结果文件中查看测试结果。
写作过程
本框架中scripts、utils、actions、contants四个文件夹中的内容可以根据实际工作内容随意更换。其他是Auty 接口自动化测试框架的必要组件。由于后续开发工作繁琐,部分改动代码无法在后续文章中及时更新。最新代码请见:Github
第1部分-生成执行列表第2部分-读取和执行脚本列表第3部分-添加异常处理和日志采集
第4部分-生成测试结果报告第5部分-调用支持、自动安装库和配置说明第6章-垃圾代码恢复、添加套件支持第7章-添加动作库和常量文件库Auty框架性能篇-Python flask框架实践接口测试用例编写建议
从某种层面来说,框架的诞生也是为了让编写的代码更加规范。不管框架如何,对于接口测试用例的编写,都应该给出以下建议:
1. 接口中涉及到url,不要写在case中,而是通过常量访问,将url存放在指定的常量文件中(避免因接口域名变化等原因导致无法维护) );
2. 测试用例中不要收录
测试数据等变量信息,设置为变量,在指定文件中完成变量的初始化;
3. 不要在测试用例中重复粘贴大段代码逻辑(不利于代码走查,会造成代码冗余,增加出错概率)。所有可以重用的流程都会被提取到方法中,并分类放置在指定的存储文件夹中的业务逻辑动作中;
4. 关于评论:语言一定要正式,评论的意义更多的是给别人看,让别人一目了然;一定要具体、详细,不要说一半;一定要准确,而且注释下面的代码逻辑一定要和注释的内容一致,不能在注释下面一段代码之后,才启动注释中收录
的内容逻辑。