【发布时间】:2014-03-14 00:32:57
【问题描述】:
Calabash Android 中有没有一种方法可以将我的应用程序发送到后台?也就是说,模拟设备/硬件的Home键?
其次,能否将应用带回前台?
【问题讨论】:
标签: android automated-tests homescreen calabash
Calabash Android 中有没有一种方法可以将我的应用程序发送到后台?也就是说,模拟设备/硬件的Home键?
其次,能否将应用带回前台?
【问题讨论】:
标签: android automated-tests homescreen calabash
这可以通过以下方式完成:
Then /^I go home$/ do
system "#{default_device.adb_command} shell input keyevent KEYCODE_HOME"
end
附言如有必要,您还可以在system "..." 行之后添加sleep <some_value_in_seconds>。
【讨论】:
keyboard_enter_keyevent 方法。所以它将是keyboard_enter_keyevent('KEYCODE_HOME')
据我所知,该操作目前不存在。你可以在这里找到(大部分)所有可用的操作https://github.com/calabash/calabash-android/tree/master/ruby-gem/lib/calabash-android。大多数有趣的选项都在 operations.rb 文件中。 performAction 方法将是最有可能帮助您的方法,因为它具有“go_back”和“press_menu”功能,但目前没有“go_home”功能。当您在 calabsh 控制台中时,您可以键入 performAction 'list_actions' 来查看所有可能的操作。我不确定这是否是一个合理的解决方法,但您可以尝试以下方法:
until (query "*").empty? do
performAction 'go_back'
end
这将简单地按返回按钮,直到您到达主屏幕。但是,如果您想返回您的应用程序,则需要重新运行start_test_server_in_background,因为您将无法从主屏幕获取任何查询信息。不管怎样,祝你好运,我希望我能帮上点忙!
【讨论】: