ranorex自动化测试框架开发之用例执行篇续


1.背景



可以利用批处理执行脚本,但是问题又出现了。


其他人如果不小心动了鼠标,就会导致ranorex的用例执行失败。


2.解决思路



2.1 用例执行期间,锁定鼠标键盘



2.2 启动脚本时候,默认让窗口最大化



3.ranorex如何处理



查阅了官方文档


关于远程运行ranorex中详细说明了和这个相关的问题解决方案


3.1 不要关闭和最小化RDP窗口



当你关闭和最小化远程桌面窗口时,远程的桌面将会被锁定。这将导致界面空白/黑屏从而导致自动测试失败。因此,如果你使用远程桌面,你需要保证测试的时候远程桌面没有被关闭和最小化。


同时确保远程桌面的机器上屏幕保护程序是关闭的,因为屏幕保护程序也会导致远程桌面被锁定。


作为workaround,你可以用一台机器连接到其他远程桌面,并保持这些窗口打开,这台机器不做任何自动测试。当你的测试在那些远程桌面机器上运行的时候,你可以锁定当前这台机器。因为你本地机器桌面锁定,但是远程桌面的session还是会继续打开,你的测试会继续在远程的机器上运行


3.2禁止鼠标键盘



在Program.cs文件中设置:


Keyboard.Enabled = false;





Mouse.Enabled = false;


但是,你需要再次注意,如果你设定他们同时为false,你就无法在不设置AbortKey的情况下终止测试。


所以你需要在Program.cs文件中同时设置:


Keyboard.AbortKey = System.Windows.Forms.Keys.Pause;


这样你就可以在某些不期望的事情发生后(死循环)可以终止测试。


你同样可以只在一个录制里面使用这项技术。这种情况下你可以在执行某些特殊操作的之前在用户代码中直接禁止键盘鼠标。而且,请别忘了再次将它们解锁,并且为其设置一个AbortKey。


3.3 使用相同的颜色和分辨率设定



如果你在远程机器上运行基于图片的自动测试和验证,你必须确保运行测试的机器和你当时建立测试/录制的机器上的颜色和分辨率一致。


并且,你需要保证应用了同样的windows scheme,因为如果你使用不同的windows scheme,你的待测应用可能会显示得不同。

3.4在虚拟机上增加超时时间



和真机相比,在虚拟机上程序可能会运行的稍微慢些,因为多个虚拟机分享了同一个的物理主机资源。因此,在虚拟机上查找元素的时候可能需要花费更多的时间。你或许需要增加对象库中某些对象的查找超时时间,或者修改你的测试来检查你的待测应用的状态。建议你使用General Settings来为特定的测试修改超时时间。


3.5 禁止鼠标键盘事件的异步分发



在使用远程桌面连接上的远端机器上运行Ranorex工具有时可能会导致鼠标指针晃动。这种情况下可以在配置里面的general选项卡中禁止“Use asynchronous dispatching of mouse and keyboard events”。
这将会解决鼠标指针晃动的问题?

4.小结

熟读官方文档,你会有收获的。

转载于:https://my.oschina.net/dlpinghailinfeng/blog/284340

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值