`
MyEyeOfJava
  • 浏览: 1124840 次
  • 性别: Icon_minigender_1
  • 来自: 北京
博客专栏
7af2d6ca-4fe1-3e9a-be85-3f65f7120bd0
测试开发
浏览量:70171
533896eb-dd7b-3cde-b4d3-cc1ce02c1c14
晨记
浏览量:0
社区版块
存档分类
最新评论

[sikuli]-while循环以及popup弹出窗

阅读更多

这里以sns例,假如你想动态的知道好友是否更新的新的状态,你可以根据你的页面上是否存在他的图片来进行判断



while not exists( ):
        sleep(5)

如果你只是想判断这个图片是否存在,其实sikuli提供了一个wait的方法来进行判断

wait( , FOREVER)

如果我们不想等太久,我们可以限制一个合适的时间,例如等上一个小时

wait( , 3600) # wait for an hour

当好友图片出现时,我们可以给予一个信息

popup("Obama has updated his message")

将按照下面的形式显示信息:

 

二、下面将用skype为例,介绍如何实时获知好友下线,并给予下线通知


我们可以写一下下面的循环脚本来进行判断,如果在线状态不存在的时候,popup提示你

1while exists( ):
2        sleep(5)
3
4popup("vgod just logged off")

上面的脚本有点象曾经的联系,其实我们可以使用waitVanish函数来搞定此事

1waitVanish( , FOREVER)
2popup("vgod just logged off")

三、再下面我们使用bus到达通知来做一点例子,如果bus到达了就会在地图中显示


这里例子呢,我们只要扫描地图那部分内容即可了,所以没必要耗费性能去扫描全屏,我们使用一下下面的功能,建立屏幕区域。


选择后,你IDE里的被选择区域将会变暗,这个时候所有的扫描都会在该区域内进行。




下一步,我们可以截取一下bus到达的标记,用来告诉sikuli我们一直在悄悄观察你是否到达啦,哈哈。


现在我们可以写一点脚本来查看bus的标记是否在地图中出现

1while not .inside().exists():
2        sleep(5)
3popup("bus has arrived")

相同的效果,如果我们使用wait函数的话应该这样写

1 .inside().wait( ,FOREVER)
2popup("bus has arrived")

OK,本章结束,有疑问请留言。

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics