总之,我有一个自定义的步骤定义向下滚动搜索结果页面,直到找到一个文本字符串。葫芦/红宝石while循环没有结束
它向下滚动,并找到文本字符串
但while循环没有结束,尽管它正确地向下滚动并在文本串中发现停止。
这显然造成了我的伤痛。
Then /^I scroll until I see the "This is a test" text$/ do
q = query("android.widget.TextView text:'This is a test'")
while q.empty?
scroll("android.view.View id:'search_listView'", :down)
q = query("android.widget.TextView text:'This is a test'")
end
end
是我一直在使用的ruby。
我不相信这里有足够的信息来确定问题的原因。当'q.empty?'返回false时,循环将会中断。如果'q.empty?'永远不会返回false,循环将永远持续下去。 – Ajedi32 2014-08-27 14:42:59
好的,但不是查询(“android.widget.TextView text:'这是一个测试'”),当它发现文本字符串改变q.empty为假 – 2014-08-27 14:52:15
显然不是,否则循环会终止。或者也许你的假设是错误的,'查询(“android.widget.TextView文本:'这是一个测试'”)'没有找到测试字符串。其中之一必须是真实的。考虑添加一些调试代码,或者使用诸如pry调试器之类的手段来手动检查问题的原因。 – Ajedi32 2014-08-27 14:54:39