想太复杂了,根据搜索条件新创建两种类型的数据,一种是符合条件的,下拉后应该会出现在列表里,另一种是不符合的,下拉后不会出现在列表里。最简单的功能验证,半小时都不要,查接口看数据库审代码那是后面的事儿...
首先锁屏之后是无法进行自动化屏幕操作的,包括远程桌面最小化之后也是不行的。但是可以通过另一种方法来绕过这个限制来实现。
首先如果你那边机器很多,可以让出一台专门做 RDP Connect 的机器用来连接所有需要进行自动化测试的机器,在运行自动化之前通过 Jenkins 之类的打开一个 RDP 连接到目标机器。
如果你那边只有一台机器的话,也可以通过 RDP Loop 实现,一台机器创建两个账号,用其中的一个账号 RDP 登陆到同台机器的另一个账号,这样可以实现 RDP 持久化,说白了就是一台机器创建两个账号自己 RDP 到自己,当然需要通过一些设置(multiple rdp)来实现。
下面是我们这边实现这个功能的 Guide 供你参考。
In Same VM, two different account, create Jenkins slave
Enable multiple RDP follow guide
https://www.serverwatch.com/server-tutorials/how-to-enable-concurrent-remote-desktop-sessions-in-windows.html
In slave 1 account 1
Configure job run following bat:
START taskkill /im mstsc.exe /f /t
del c:\mstsc.txt
Start /b "" "C:\RDP\rdp.exe" /v:%machine_name% /domain:%domain% /u:%user_name% /p:%password% /fullscreen /w:1920 /h:1200
ping 1.1.1.1 -n 1 -w %delay%
tasklist | find "mstsc.exe" >> c:\mstsc.txt
if exist c:\mstsc.txt exit 0 else exit 1
我们这边所有的桌面程序自动化(.net 程序, 桌面程序 包含 web 之类混合应用等的通吃)都通过以上方法实现了,实测公司内网基本上不会断,跑几十个小时都没问题。
这思路满有意思
多谢分享!
很像 sikuli 呀
支付相关的按钮或者输入框通常在开发的时候会做特殊处理,防止被不良应用劫持...
现在已经不是惠普家的了
Python-UIAutomation-for-Windows: 一个开源的 python 写的基于 UIAutomation 的框架,MFC, WinForm, WPF 的 app 都可以操作,还是满好用的
https://github.com/yinkaisheng/Python-UIAutomation-for-Windows
前面的数据好像某篇论文里的