在开始测试之前卸载app

时间:2013-12-20 14:24:01

标签: android testing android-espresso

我们正在尝试为我们的应用编写instrumentationTest。

例如,我想为授权/注册编写测试。

然而,在每次测试之前,我都想要未经授权?所以我需要清理所有数据,删除数据库等。

那么有没有办法在每次测试之前删除app或app的数据?

3 个答案:

答案 0 :(得分:11)

使用Android studio,您可以创建一个测试配置,在运行测试之前首先卸载您的应用。

创建一个新的外部工具。

  1. 转到首选项 - >外部工具。
  2. 单击“+”图标以创建新工具。
  3. 将名称设置为“卸载myApp”(或任何您喜欢的内容)
  4. 将群组设为“自定义工具”(或您喜欢的任何内容)
  5. 将程序设为“adb”
  6. 设置要卸载的参数
  7. 单击“确定”。
  8. 您可以点击工具 - >自定义工具 - >“卸载myApp”来测试此新工具是否有效。

    步骤2.创建或编辑测试配置。

    1. 转到“编辑配置”。
    2. 选择您要修改的Android测试配置。
    3. 在“发布前:...”下,单击“+”图标。
    4. 选择“运行外部工具”。
    5. 在弹出窗口中,选择新工具“卸载myApp”。
    6. 使用箭头使外部工具高于任何其他命令,例如Gradle-aware Make“。
    7. 单击“确定”。
    8. 现在,当您运行此配置时,应在运行测试之前首先卸载您的应用程序。

答案 1 :(得分:1)

使用注释,例如:

@BeforeEach

并将清理代码放在那里。

答案 2 :(得分:1)

这个问题是在13年提出的。从那时起,我们已经走了很长一段路。 Android具有jUnit测试运行程序,该程序具有在测试协调程序下的清理机制。

在这里https://developer.android.com/training/testing/junit-runner

查看