[英]Using Qt Event Handlers in squishtest
我正在使用squishtest
库从我的Python代码处理Qt应用程序,并尝试使用事件处理程序,如下所示:
import squishtest
def handle_mouse_event(event):
print 'Clicked!'
squishtest.startApplication('application')
squishtest.installEventHandler('QMouseEvent', handle_mouse_event)
不幸的是,这不起作用,即在应用程序内单击元素没有任何反应,但是如果我在Squish运行时中的Squish IDE中运行了与该代码等效的代码,它将起作用:
import squish
def handle_mouse_event(event):
print 'Clicked!'
squish.startApplication('application')
squish.installEventHandler('QMouseEvent', handle_mouse_event)
有什么区别,以及如何使事件处理程序与squishtest
一起使用?
Python 2.7.14,Squish 6.3.1,Ubuntu 16.04
(按照原始海报的建议重新张贴作为答案。)
在Squish软件包中使用Python安装,此版本在使用Squish 6.3.x +的Linux和Windows上对我有效-但坦率地说,我在脚本末尾添加了snooze(5),以便有一些时间可以在应用程序的窗口,然后甚至基于鼠标移动的事件也会触发事件处理函数的执行。
使用snooze()的另一个副作用是事件循环一直处于旋转状态,而使用time.sleep()则不是这种情况(您稍后提到过)。
如果仍然无法解决问题,建议您与froglogic Squish的技术支持联系。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.