Calabash handling “Complete action using” dialog

孤人 提交于 2019-11-28 05:48:23

问题


I want to test sharing functionality of an app but I have no idea how to handle android dialog "Complete action using" (Facebook, Gmail etc.)
When I use query("*") it is returning an empty set of fields.
Is there any way to handle such system dialogs using Calabash or any other way to test such functionality as sharing?

I am running my tests on physical device.

Edit: If there is no way to check whether the dialog has been opened or not, then maybe it is possible using adb shell or something like that?


回答1:


It's not a very elegant solution but you can simulate screen touches using adb. There is an answer that covers it here - simulating touch using ADB

Edit: Adding some details on using adb to dump a file of all of the UI elements.

In the android sdk in the platforms/android-L folder there is a tool called uiautomater.jar that adb can use to run tests (though I've never used it for that) and to dump an xml file of the visible elements.

adb shell uiautomator dump test.xml

will create the xml file (on the device not your computer) that you could then look through in your code to check for the pop up you want. If you want to interact with the pop up then you can use the coordinates given in the xml dump to pick which one you want and use an adb touch event to click it.

Not a pretty solution but hopefully not too difficult to work into your tests :)



来源:https://stackoverflow.com/questions/25016094/calabash-handling-complete-action-using-dialog

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!