当前位置: 首页 > 知识库问答 >
问题:

为什么我不能将AndroidJUnit4和ActivityTestRule导入到我的单元测试类中?

吴谦
2023-03-14

我在导入一些Android UI测试框架类时遇到了麻烦--我只是不知道哪里出了问题!

这是我的课:

@RunWith(AndroidJUnit4.class)
@LargeTest
public class ExampleUnitTest {

@Rule
public ActivityTestRule<MainActivity> mActivityRule = new ActivityTestRule(MainActivity.class);

@Test
public void listGoesOverTheFold() {
    onView(withText("Hello world!")).check(matches(isDisplayed()));
  }
}

但是由于某种原因,我得到了错误'cannot find symbol activitytestrule'和'cannot find symbol androidjunit4'。我试图导入它们,但找不到。

compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.4.0'
androidTestCompile 'com.android.support:support-annotations:23.4.0'

androidTestCompile 'com.android.support.test:runner:0.4'
androidTestCompile 'com.android.support.test:rules:0.4'
androidTestCompile 'com.android.support.test.espresso:espresso-core:2.2.1'
androidTestCompile 'com.android.support.test.uiautomator:uiautomator-v18:2.1.2'

有人有什么想法吗?

共有1个答案

蒲昀
2023-03-14

您可以在Android中设置两种不同类型的测试

单元测试

  • 它们直接在JVM上运行,不能访问Android框架类。
  • 它们保存在测试/java
  • 需要使用命令testcompile
  • 在build.gradle文件中添加依赖项
  • 通常使用Mockito、Robolectric和JUnit进行这些测试

仪器测试

    null
 类似资料:
  • 我试图导入PyAudio,但它总是给我一个错误。如果我的电脑有问题,我使用的是Windows64x和Python3.9.4。以下是错误:

  • 问题内容: 看一下这个文件: 它不编译;我需要。现在考虑这一点: 完全一样,只是用代替,所以不应该编译,对吧?错误。 好的,所以不必导入是众所周知的,但是 为什么 呢?“明显”的答案是因为它的使用频率远高于,但是不应该“隐式导入”吗?原始包装器类,例如和呢?用 远远 往往比和,但我必须进口,并不需要进口。 什么是落后不需要对进口的原因,,,和其他几个班? 问题答案: 明显的答案是因为它的使用频率远

  • 我试图找到这个按钮并点击它。但我得到了这个错误: 我注意到它正在寻找不同的字符串bc它在类名前面添加了这个点。这是问题吗? 非常感谢。

  • 我在VS2019中看到一些非常奇怪的NUnit测试行为,而同样的解决方案在VS2017中运行良好。我的解决方案中有几个NUnit测试项目。 在安装了NUnit Runner扩展的VS2017中,我可以在测试资源管理器窗口中看到我的所有测试,并且“run all”按钮将工作并运行所有测试。我的组织中的一些开发人员使用Resharper而不是NUnit扩展,这也可以工作。 我已经停止使用Resharp

  • 我有一个 xUnit.net 测试,如下所示: VS 2012的xUnit插件表示: 未找到要运行的测试。 TestDriven.net运行良好,但提到了一些关于特设: 1通过,0失败,0跳过(请参阅“任务列表”),这花费了0.47秒(临时) TeamCity、和和Visual Studio也找不到 (我已经安装了,VS看到了一些测试。) 什么原因?

  • 问题内容: 我对git和詹金斯都很陌生。 我将密钥添加到bitbucket和本地计算机中时: 我可以克隆。 但是,当我将相同的url()添加到Jenkins存储库url时,出现以下错误: 问题答案: 您还需要为Jenkins用户设置ssh密钥。 通常的想法是,您登录到Jenkins框,并成为“ jenkins”用户。您可以为您的Jenkins用户打电话,所以请确保使用正确的名称。一旦成为Jenki