2014-10-20 65 views
6

我们目前有一款Android应用程序,我们正在使用Espresso进行测试。我们要测试的功能之一是从本地图库中选择一张图片/图像。我们可以一路调出图库视图,但无法在最终的窗口中从最近,下载,图库中进行选择。以下是我们所做的一个片段。如何使用Espresso点击Android Gallery

public void testShouldBeAbleToSelectPhotoFromGallery() { 

    getActivity(); 

    // given 
    onView(withId(launch_gallery_button)).perform(click()); 
    onView(withText("Gallery")).perform(click()); // this is a button in our app 
    // then we get stuck :(
} 

谢谢!

回答

4

这是不可能与任何Robotium或咖啡,因为它们只在测试上的应用程序的活动的工作。

要编写可以跨不同的应用程序和Android内置的应用程序工作的集成测试,你可以使用谷歌提供的UiAutomator framework

基本上你会分析画廊应用在uiautomatorview学习如何选择你的测试用例需要的UI元素,然后作用于他们,而不是不像咖啡。

+0

感谢开始玩uiAutomator。它看起来更有希望。 – user3298441 2014-10-26 16:29:25

2

如果你想在你的应用程序来测试这个功能,你应该使用意图,咖啡嘲讽功能。 浓缩咖啡测试不应该让你的应用摆在首位。 取而代之,您可以捕捉到您用来打开图库应用程序的意图,并将结果返回给您的应用程序。 在测试过程中,您将留在您的应用程序中,您将立即得到结果。

要做到这一点,请检查intendingintended api's Espresso。

Here is a tutorial by Pengj让你熟悉的意图嘲讽。该教程提到Mockito,但是如果没有它,你可以完美地使用它。

相关问题