经过Python测试交流群的小伙伴群策群力,teprunner添加了一个重要功能,把PyCharm中的代码,通过Git同步到测试平台中,生成测试用例。这样,teprunner就成了一个名副其实的pytest脚本在线管理平台

效果展示

项目添加Git仓库和Git分支:

image-20210615230038968

点击同步按钮即可进行Git同步:

image-20210615230244021

同步说明

image-20210615230356255

为什么要把平台用例和Git用例独立?如果平台上面的用例可以通过Git进行提交代码,那么代码冲突会很难解决,这是其一。其二是平台用例的好处就是规避了Git管理代码的冲突问题,一般测试人员代码能力没有开发人员那么强,代码冲突解决起来是真的费时费力。其三是如果用例在平台和Git中都有修改,那么同步时并不知道哪一份是最新的,无法判断。

前端开发内容

router添加路由:

image-20210615231704773

image-20210615231720045

给项目增加两个输入框:

image-20210615231811870

image-20210615231831122

image-20210615231846686

表格增加两列:

image-20210615231928872

image-20210615231940304

给测试用例的描述添加一个链接,查看用例:

image-20210615232040316

接口响应添加来源字段:

image-20210615232220248

根据来源区分编辑和删除的操作权限:

image-20210615232141389

用例查看页面:

image-20210615232306059

Git同步菜单:

image-20210615232338033

Git同步页面及说明:

image-20210615232441527

请求后端gitSync接口:

image-20210615232427746

后端开发内容

Project新增字段:

image-20210615232638405

Case新增字段:

image-20210615232710277

其中filename用于缓存在数据库中的用例代码对应的文件名(实际上是相对于tests目录的路径)。

数据迁移:

python manage.py makemigrations
python manage.py migrate

ProjectSerializer添加字段:

image-20210615232943327

CaseSerializer和CaseListSerializer添加字段:

image-20210615233026266

url添加路由:

image-20210615233107573

git_sync视图:

image-20210615233731606

Git同步后端配置:

image-20210615233138299

从Git拉代码:

image-20210615233302973

如果docker中没有就clone,如果已经存在就checkout到指定分支再git pull。

同步用例:

image-20210615233458789

根据数据库中的filenames和git的filenames进行集合化后求差集/交集,得出需要删除/添加/更新的用例集,然后分别操作数据库缓存。

读取git文件内容:

image-20210615233250022

从文件内容提取描述和创建人:

image-20210615233214108

小结

本文介绍了如何使用Git把PyCharm中的pytest脚本,同步到测试平台进行管理。至此,teprunner测试平台V1.0.0正式完成。后续会逐渐完善部署文档和用户手册,欢迎持续关注。

版权声明:本文为df888原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/df888/p/14887677.html