| |
|
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
| -> 开发测试 -> 聊一聊低代码自动化测试平台的设计思路 -> 正文阅读 |
|
|
[开发测试]聊一聊低代码自动化测试平台的设计思路 |
|
自 18 年起,一直在思考如何把自动化测试框架转化为测试平台,让自动化测试告别代码。中间搁置两年,20 年底于上家单位尝试在做,最后效果还算不错,但是很多设计在使用中发现仍不完善,因此后来下定决心自己一个人重做一版。 通常来说,设计自动化测试框架时模块大概可以拆分为:测试对象(API/UI)、测试用例、测试数据、测试环境、测试计划、测试日志、测试报告以及一些辅助功能如公共参数、测试文件等。那么我们将其平台化后,也可以参考这个思路来做,但是有些功能需要做适当的变更:
接下来,我按照自己已实现的平台来详细介绍一些关键的功能点设计: 一、测试对象管理 自动化测试包括了 API 和 UI 以及 APP,其中 UI 和 APP 的测试对象都是页面元素,只不过一个是 Web 页面元素,一个是 Activity 页面元素。所以测试对象管理,可以分为接口管理和元素管理。无论哪种管理,一定要支持模块化管理,这样才能逻辑清晰和维护方便。因此我们可以采用常见的左树右表来进行管理,接口管理列表如图所示(元素同理):
接口管理相对于元素管理较为复杂,元素管理只需要维护其名称、定位方式即可。但是接口需要维护的数据很多,这里我们可以参考 postman 的接口请求,除了接口基本信息外,可以将其请求信息按照 TAB 展示,如图所示:
二、测试用例管理 测试用例的管理和对象管理一样,也应该按照模块化管理。其次,API 用例和 UI 用例的管理和使用是一样的,没有必要分开管理,只是写用例的模板不一样而已。但用例编写是平台化的重中之重,需要注意的地方有很多 (用例细节 DEMO 图片太多,我就不贴了):
当然还有很多其他小细节,这个一一叙述过于占用篇幅,因此就不再继续赘述了。 三、测试集合和测试计划 四、测试报告
五、测试引擎 引擎执行的原理其实很简单,使用 python 的 unittest 作为核心来管理用例执行,并对其做一些二开。其次当用例开始执行时,先会对用例进行渲染,将动态变量渲染成最终值,完成渲染后才会进行最终的执行。最终执行的驱动,接口用例使用 request、UI 用例使用 selenium。 简而言之,引擎其实就是在原有的测试框架上包一层平台通信,使用很简单。附上我做的测试引擎代码:测试引擎 GIT 地址 主要功能设计就是这些,还有些细枝末节下次补充。小伙伴们有兴趣可以试试看我发布的 DEMO,因为测试执行会发邮件的,避免我的邮箱爆炸,所以先不提供测试账户,可以手机号注册用户,账号仅作试用体验,不作他用。平台 DEMO 地址
福利 :关注公众号获取
|
|
|
| 开发测试 最新文章 |
| pytest系列——allure之生成测试报告(Wind |
| 某大厂软件测试岗一面笔试题+二面问答题面试 |
| iperf 学习笔记 |
| 关于Python中使用selenium八大定位方法 |
| 【软件测试】为什么提升不了?8年测试总结再 |
| 软件测试复习 |
| PHP笔记-Smarty模板引擎的使用 |
| C++Test使用入门 |
| 【Java】单元测试 |
| Net core 3.x 获取客户端地址 |
|
|
| 上一篇文章 查看所有文章 |
|
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
| 360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年11日历 | -2025/11/28 6:24:32- |
|
| 网站联系: qq:121756557 email:121756557@qq.com IT数码 |