3.目录结构

pytest接口自动化框架搭建_董林夕的博客-CSDN博客_pytest接口自动化测试框架

1.config层,放配置文件,把所有的项目相关的配置均放到这里,用Python支持较好的配置文件格式如ini或yaml等进行配置。实现配置与代码分离。

2.data层,放数据文件,可以把所有的testcase的参数化相关的文件放到这里,一般可采用xlsx、csv、xml等格式。实现数据与代码分离。

3.drivers层,放所需的驱动,如Chromedriver、IEDriverServer等。

4.log层,所有生成的日志均存放在这里,可将日志分类,如运行时日志test log,错误日志error log等。

5.report层,放程序运行生成的报告,一般可有html报告、excel报告等。

6.test源码层,放所有测试相关的文件:

case——测试用例

common——跟项目、页面无关的封装,如浏览器封装

page——页面相关操作封装

suite——组织的测试套件

7.utils层,所有的支撑代码都在这里,包括读取config的类、写log的类、读取excel、xml的类、生成报告的类(如HTMLTestRunner)等类和方法,都在这里。

8.ReadMe.md,说明性的文件,告诉团队成员框架需要的环境以及用法

————————————————————————————————

具体框架搭建

1.公共方法—common
1.1.yaml_util.py
1.2. excel_util.py
1.4、text_ util.py
1.5、exception_util.py
1.6、email_util.py
1.7、log_util.py
1.8、request_util.py
1.9、extract_util.py,实现数据驱动—yaml热处理
2.测试数据—data
3.输出文件—output
4.运行用例—testcase
5.前后置—conftest.py结合pytest.fixture()
6.运行用例—all.py
三、设计缺陷及解决方案
四、结合jenkins实现持续集成
1.jenkins的安装
配置jenkins
目标:最终完成一个用jenkins集成或用django,达到一个自由灵活可复用的接口自动化测试框架

1.先搭建框架主干
config:存放配置文件,如ini文件,可以用来保存配置各个环境的地址
output:用来存放测试报告、日志等
common:公共的方法,如,封装yaml操作相关的方法、excel相关操作方法,读取mysql、oracle的脚本等
testcase:运行用例的脚本
data:存放测试用例excel表、和转化为yaml格式的测试用例
2.选用合适的单元测试框架(这个用pytest做吧),··················
3.补充完善各个模块
4.写测试用例,用实际的接口进行测试

 ——————————————————————————————————————

配置文件

在本框架中主要有两个重要的配置文件:config.yml、pytest.ini

config.yml

config.yml为用户自定义的配置文件,根据项目需要进行配置参数设置。
例如服务ip、端口,各类组件配置参数、数据库连接等等。
yml文件必须采用yml规范进行参数维护

pytest.ini

pytest.ini为pytest本身自带的配置文件,主要作用例如:制定用例发现规则、定义标签、配置日志信息、以及其他一些pytest运行时的参数均可以在该配置文件中配置,简化运行复杂度。
注意:pytest.ini文件位置必须为整个工程的根目录下

conftest.py

该文件主要用来做全局用例共享使用,如参数的共享、测试fixture的定义等,一些初始化的操作通常会放到该文件中,该文件名不能改变,在整个工程中可以有多个,但需要在不同的目录层级下,其应用范围也不一样。

World.py

用户定义的全局模块,便于不同用例间全局变量数据的传递等,例如用例参数、配置信息、session,其他全局参数等,使用方法与python中模块中变量的使用方法一致。
注意:导入全局变量时,建议连同模块名字一起带上,如下:

import World

def test_1():
    World.session.get(World.config['microbrain']['url])

main.py

整个工程运行主程序,必须要在工程的根目录下。

------------------------ ------------------------ ------------------------ ------------------------ ------------------------ 

目录结构

common                 ——公共类
config                 ——配置文件
logs                   ——日志
page                   ——基类
page_element           ——页面元素类
page_object            ——页面对象类
report                 ——报告文件
TestCase               ——测试用例
utils                  ——工具类
run_case.py            ——总执行文件

运行

python run_case.py

 

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MTK Launcher3的源码目录结构如下: ``` Launcher3/ ├── Android.mk // 编译脚本 ├── CleanSpec.mk // 清理脚本 ├── LICENSE // 许可证 ├── NOTICE // 通知 ├── README.md // 读我文件 ├── res // 资源文件夹 ├── src // 源代码 │ ├── com.android.launcher3 // Launcher3的主要逻辑代码 │ ├── com.android.launcher3.accessibility // 辅助功能相关代码 │ ├── com.android.launcher3.backup // 备份和恢复相关代码 │ ├── com.android.launcher3.config // 配置文件相关代码 │ ├── com.android.launcher3.dynamicui // 动态UI相关代码 │ ├── com.android.launcher3.graphics // 图形相关代码 │ ├── com.android.launcher3.icons // 图标相关代码 │ ├── com.android.launcher3.logging // 日志相关代码 │ ├── com.android.launcher3.model // 模型相关代码 │ ├── com.android.launcher3.notification // 通知相关代码 │ ├── com.android.launcher3.pageindicators // 页面指示器相关代码 │ ├── com.android.launcher3.popup // 弹出窗口相关代码 │ ├── com.android.launcher3.provider // 数据库提供者相关代码 │ ├── com.android.launcher3.settings // 设置相关代码 │ ├── com.android.launcher3.testing // 测试相关代码 │ ├── com.android.launcher3.uioverrides // UI覆盖相关代码 │ ├── com.android.launcher3.util // 实用工具相关代码 │ ├── com.android.launcher3.views // 视图相关代码 │ └── com.android.launcher3.widget // 小部件相关代码 └── tests // 测试代码 ``` 其中,com.android.launcher3是Launcher3的主要逻辑代码所在的包,其他的包则是各种功能模块的代码。此外,还有Android.mk、CleanSpec.mk、LICENSE、NOTICE、README.md等文件。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值