自动化工具 传统的 C/S 架构产品,在 windows 上的 client 端,如何进行自动化测试?

Kevin Gu · 2019年02月28日 · 最后由 SinDynasty 回复于 2019年03月02日 · 3056 次阅读

如题,目前一个子项目还是传统的 C/S 架构,server 端在云上,有前端 web 页面做中控,client 是运行在 windows 系统上的,目前支持 windows7 和 windows10
说一下目前这个子项目自动化测试的情况:
1.前端 web 网页独立的自动化测试
前端是基于 react 开发的,目前我们在用 codeceptjs+webdriverio 在做。
自动化 case 大概有三四百条,主要是 UI 自动化,校验一些页面的显示和简单功能的验证,web 端自动化 case 占比差不多有 80%。
自动化测试前先灌入提前准备好的假数据,通过自动化测试做一些 server 端的验收测试的工作。
这边用 Jenkins 做了 CI,投入的人力比较少,人力主要是维护自动化 case 了,手工测试基本都不需要。

2.server 和 client 联调的自动化测试
目前方案是这样的:
在 windows 系统中,内置一个 agent,这个 agent 是接受消息和校验 client 执行结果。
在 Ubuntu 中运行 web 端自动化,下发一些策略给 client,然后通过发消息给 agent,让 agent 通过一些校验判断 client 的策略是否执行成功,之后 agent 再返回结果给外面的 web 端自动化主进程。
目前 client 对于我们 QA 而言是黑盒的,这套联调自动化测试的方案缺陷很大,agent 只能用过一些简单的 windows 命令或接口来判断 client 是否执行成功。
只能测一些简单的业务,复杂的业务自动化完全帮不上忙。
自动化占比很低,自动化 case 执行效率也不高。

3.client 无自动化测试
client 目前发布基本都是人工手动测试,没有自动化测试。想推自动化测试也好久了,但是 windows 客户端目前没有啥好的解决方案,而且这部分人力投入太大,一直陷入这种多操作系统、多平台的反复验证,对人员和 team 的成长都不利。

----分割线----

这个 client 占用了大量的人力测试资源,不管是联调测试还是客户端自己功能验证都依赖于人工。
目前想进一步提高自动化效率,减少现有投入的资源,把人力解放出来坐一些更有意义的事情。
想问一些大佬和前辈在 windows 系统中有没有好的工具或者解决方案介绍。

共收到 7 条回复 时间 点赞

看了腾讯的 QTA,很可惜的是用于 windows 的 QT4C 没开源。。。😂

windows GUI 自动化 Autoit 和 QTP/UFT 了解一下

槽神 回复

感谢,可能我之前陷入误区,一心想着用开源,不想受 IDE 约束,看到 QTP 这类都直接略过去了。。。

windows 系统官方有给文档和方案的

Kevin Gu 回复

可以去了解一下 LeanFT, qtp 确实笨重,leanft 是继承了 qtp 的对象识别机制,并能让你在 ide 通过 coding 做深度开发,CI 集成

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册