是否可以使用浓缩咖啡拍摄屏幕截图并测试像素值?

时间:2013-11-12 11:53:45

标签: android ui-testing android-espresso

我开始使用espresso并编写了一些简单的UI测试,用于点击按钮,输入文本并检查是否一切都在那里。 现在我想截取屏幕截图并测试一些像素值,但我找不到办法做到这一点。 有人有什么建议吗?甚至可以用浓缩咖啡吗?

4 个答案:

答案 0 :(得分:8)

由于espresso测试是简单的InstrumentationTestCases,您可以使用paparazzo and celebrity截取您的应用程序的屏幕截图。

Spoon也是一个非常好的截图系统。比狗仔队更敏锐,但只能截取活动的截图,而不是对话框。

最后但并非最不重要的是,自Android SDK 16以来,您可以使用screencap utility来截取应用的快速和清晰的屏幕截图。我认为这个解决方案确实是最好的,但它仅适用于SDK 16 +。

最后,根据参考屏幕截图测试屏幕截图,没有真正的工具。你可以在堆栈上找到很棒的实现思路,但到目前为止,还没有一个可以在android上使用的参考工具。

答案 1 :(得分:1)

Facebook有一个工具用于比较屏幕截图,如果你正在寻找的话:http://facebook.github.io/screenshot-tests-for-android/

  

迭代UI代码很难。如何在所有配置中快速验证布局或视图更改是否正常工作?   screenshot-tests-for-android可以通过提供一个测试框架来解决这些问题,该框架可以检查各种变化之间的视觉差异。

答案 2 :(得分:0)

我将一个版本用Spoon添加Espresso运行到适合Android的高质量工具,check it out

跑步你会看到:

mvn clean install -P espresso-spoon

答案 3 :(得分:0)

作为比较屏幕截图的一种替代方法,您可以考虑使用LayoutVerifier之类的库来比较布局状态本身(即视图的位置)。

尽管它不会以屏幕截图的形式为您提供布局的直观表示,但它实际上通过比较视图的状态来执行相同的功能。它还可以在Robolectric上运行,从而无需在真实设备上运行。