标签: android-testing

Espresso:如果视图存在则返回布尔值

我正在尝试检查Espresso是否显示视图.这是一些伪代码来显示我正在尝试的内容:

if (!Espresso.onView(withId(R.id.someID)).check(doesNotExist()){
   // then do something
 } else {
   // do nothing, or what have you
 }
Run Code Online (Sandbox Code Playgroud)

但我的问题是.check(doesNotExist())不返回布尔值.这只是一个断言.使用UiAutomator,我能够做到这样的事情:

 if (UiAutomator.getbyId(SomeId).exists()){
      .....
   }
Run Code Online (Sandbox Code Playgroud)

java android android-testing android-espresso

38
推荐指数
6
解决办法
3万
查看次数

如何让Android app alpha/beta测试人员免费下载该应用程序?

我有一个应用程序,我想以$ x的价格向公众发布,但是,我想允许免费下载Google Developer Console Alpha/Beta APK.我希望测试人员能够免费下载吗?我怎么做?

提前致谢,

PS.我发誓我在Google上找到了链接,但我似乎无法再找到它.

android google-play android-testing

37
推荐指数
1
解决办法
3万
查看次数

模拟在Android中运行最佳的库/框架?

我正在使用第三方库(Twitter4j)开发Android应用程序.我希望能够在JUnit和功能测试中模拟那些对象(也是我创建的对象).

您是否有使用某些模拟库的好经验,您可以推荐它们吗?

android unit-testing mocking android-testing

35
推荐指数
2
解决办法
1万
查看次数

Espresso - 在列表视图中单击文本

我试图使用Espresso点击列表视图中的文本.我知道他们有这个指南,但我看不到如何通过查找文本来完成这项工作.这就是我尝试过的

Espresso.onData(Matchers.allOf(Matchers.is(Matchers.instanceOf(ListView.class)), Matchers.hasToString(Matchers.startsWith("ASDF")))).perform(ViewActions.click());
Run Code Online (Sandbox Code Playgroud)

正如所料,这不起作用.错误表示层次结构中没有视图.有谁知道如何选择一个字符串?("ASDF"在这种情况下)提前谢谢.

由于@haffax而更新

我收到错误:

com.google.android.apps.common.testing.ui.espresso.AmbiguousViewMatcherException:'可从类中分配:class android.widget.AdapterView'匹配层次结构中的多个视图.

第二个错误

有了这段代码

onData(hasToString(startsWith("ASDF"))).inAdapterView(withContentDescription("MapList")).perform(click());
Run Code Online (Sandbox Code Playgroud)

我收到这个错误

com.google.android.apps.common.testing.ui.espresso.PerformException:在视图'上执行'加载适配器数据'时出错,内容描述为:"MapList"'.

引起:java.lang.RuntimeException:找不到匹配的数据:asString(以"ASDF"开头的字符串)


昂达(任何()).inAdapterView(withContentDescription( "降序")).atPosition(X).perform(点击())

android android-testing android-espresso

35
推荐指数
1
解决办法
3万
查看次数

Android alpha测试"找不到项目"

我已经发布了我的应用程序进行alpha测试,但无法从Play商店下载.

我已经打开URL" https://play.google.com/apps/testing/com.* ",并接受是一个测试,现在它为我"你是一个测试".但是,当我点击"从Play商店下载"链接时,它会在我的测试设备游戏商店中显示"找不到商品",并在桌面浏览器中显示"未找到请求的URL".

  1. 应用程序处于已发布状态超过48小时.
  2. App已在所有国家/地区发布.
  3. 添加了针对测试人员的Google论坛,我可以在管理测试人员标签中看到该论坛.测试人员帐户被添加到组中(三重检查)
  4. 测试设备只有一个测试人员帐户.
  5. 我可以访问应用内购买,这意味着应用程序已正确发布.Google不再支持草稿模式.

我在stackoverflow中经历了一些类似的帖子,但没有明确的答案.对某些人来说,它看起来像是自动解决了,有些人不够幸运.

android google-play android-testing

34
推荐指数
4
解决办法
2万
查看次数

如何在Android单元测试中打开控制台输出?

有没有办法在控制台输出中打开测试日志记录?

我知道我们可以查看HTML文件中生成的测试结果并检查那里的标准输出,但我发现它有点不方便.

我知道有一种方法可以使用标准的java插件来做到这一点:

test {
    testLogging {
        events "passed", "skipped", "failed", "standardOut", "standardError"
    }
}
Run Code Online (Sandbox Code Playgroud)

但在Android项目中使用它会导致错误:

Could not find method test()
Run Code Online (Sandbox Code Playgroud)

当然,应用java插件是不可接受的,因为它与Android插件不兼容.

android android-testing android-gradle-plugin

33
推荐指数
2
解决办法
1万
查看次数

使用Espresso测试Snackbar节目

有没有办法使用Espresso测试小吃店出现的正确文字?

我有一个简单的电话来创建一个小吃吧

Snackbar.make(mView, "My text", Snackbar.LENGTH_LONG).show();
Run Code Online (Sandbox Code Playgroud)

我没有运气就试过这个

onView(withText("My text")).inRoot(withDecorView(not(is(mActivityRule.getActivity().getWindow().getDecorView())))).check(matches(isDisplayed()));
Run Code Online (Sandbox Code Playgroud)

android integration-testing android-testing android-espresso android-snackbar

33
推荐指数
2
解决办法
8685
查看次数

如何使用gradle android运行单个测试

我正在尝试使用此行运行测试...但是这会启动所有测试:

./gradlew -DconnectedAndroidTest.single=LandingActivityTests connectedAndroidTest
Run Code Online (Sandbox Code Playgroud)

我该如何进行单一测试?

testing android robotium android-testing

32
推荐指数
3
解决办法
8151
查看次数

getTargetContext()和getContext(在InstrumentationRegistry上)之间有什么区别?

我正在使用新的Android测试支持库(com.android.support.test:runner:0.2)来运行Instrumentation Tests(aka Device或Emulator Tests).

我用我的测试类注释@RunWith(AndroidJUnit4.class)并使用Android Studio来运行它们.

对于我的测试用例,我需要一个Context实例.我可以得到它,InstrumentationRegistry但它有两个上下文相关的方法,并不清楚有什么区别.

InstrumentationRegistry.getContext()vs 之间有什么区别InstrumentationRegistry.getTargetContext()

android android-testing

32
推荐指数
1
解决办法
1万
查看次数

Android:为Fragments编写测试用例

在我以前的项目中,我通过活动完成了大部分工作,并根据文档使用了ActivityInstrumentationTestCase2:
http ://developer.android.com/tools/testing/activity_testing.html
我知道如何使用Activity Test Cases ; 但是当谈到Fragment时,我没有太多的想法,也没有找到与此相关的文档.那么当我有几个片段有一个或两个活动时,如何编写测试用例?任何示例代码或示例都会更有帮助.

android unit-testing android-fragments android-testing

31
推荐指数
2
解决办法
2万
查看次数