我在AndroidViewClient中使用culebra六角琴模式,用app运行自动GUI测试。但我所看到的是这个工具有时按下主页按钮,我的应用程序退出,因此不再测试我的应用程序。此工具中是否有任何内容仅限制GUI执行到当前显示的应用程序?
答案 0 :(得分:1)
如果您只想从随机按下的按钮中删除HOME,您可以在culebron.py
中更改此行(您必须使用源代码而不是包) if rand > 0.85:
# Send key events
k = random.choice(['ENTER', 'BACK', 'HOME', 'MENU'])
并删除您不想要的密钥。
我将尝试找到可以包含在culebra
命令行中的更好的方法(可能提供事件和频率的配置文件)。
最新 AndroidViewClient / culebra版本14.0.0 通过JSON文件引入六角琴配置,现在您可以定义事件及其概率。仍未涵盖所有事件和案例,但您提到的那个事件和案例都受到支持。
升级到最新版本并创建像这样的配置文件
{
"probabilities": {
"systemKeys": 0.5,
"other": 0.5
},
"systemKeys": {
"keys": [
"ENTER",
"BACK",
"HOME",
"MENU"
],
"probabilities": [
0.33,
0.33,
0,
0.34
]
}
}
将完全阻止HOME键事件,并将使用生成的事件的一半(0.5)作为系统键。
然后,使用此文件调用culebra
$ culebra --gui --concertina --concertina-config=/path/to/myconf.json --scale=0.2