自动化工具 求教:用什么工具可以对桌面应用做自动化测试

Tony · 2018年04月17日 · 最后由 jimy 回复于 2019年08月29日 · 3455 次阅读

我在做一个 web 测试,单击一个网页上的一个按钮就会启动 word,然后我们要输入内容再将文件保存。selenium webdriver 没办法操纵 word,我试过用 winium,但它只能操作 driver 自己打开窗口,无法去捕获别的窗口,请问有什么方法吗?
PS:需要 Java 能用的 API

共收到 18 条回复 时间 点赞

用 batch 或者 shell 可以启动 word 吧,然后用程序调用脚本文件

Tony #2 · 2018年04月17日 Author
Tina 回复

我这个 word 是通过网站打开的,但是不知道怎么用 selenium 操作网页那样操作 word

Python-UIAutomation-for-Windows: 一个开源的 python 写的基于 UIAutomation 的框架,MFC, WinForm, WPF 的 app 都可以操作,还是满好用的
https://github.com/yinkaisheng/Python-UIAutomation-for-Windows

可以用 UFT,就是以前的 QTP,惠普家的。
不过根据楼主的情况推荐试试 sikuli,应该可以满足你的需要。

mrleopard 回复

现在已经不是惠普家的了😂

python 的 win32 系列...可以通过句柄精准操作...了解一下~

https://pywinauto.github.io/

这个我大规模使用过

Tony #11 · 2018年04月17日 Author
jacexh 回复

有 Java 能用的么

Tony 回复

jython 了解下 :)

appium 也支持 windows 桌面应用

按键精灵 + 办公插件 找句柄操作就行了, 试过比 pywin32 简单多了。不过很多人不待见,不屑按键精灵,想不明白。。

Tony #12 · 2018年04月23日 Author
在路上 回复

可是 winium 都做不到啊

Tony #6 · 2018年04月23日 Author
Zhhh 回复

这个不是一个 api

仅楼主可见

墙裂推荐 UFT

appium 好像可以

jacexh 回复

这种针对的是标准的组件,非标准的有些都没句柄,没法做应该

pywinauto 针对标准控件进行实现,对于非标准的可以我们考虑是使用图像比对(pyautogui)来进行。非标准的控件,目前了解好像其他所有的工具都没有办法处理,除非使用 windows 自身的 UIAutomation 好像可以支持。

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