【问题标题】:Integration testing Android集成测试安卓
【发布时间】:2017-01-11 07:59:52
【问题描述】:

我刚开始在 Android 上进行测试。我看到很多关于单元测试和端到端测试(使用 espresso)的文章和教程。没关系。但是集成测试呢?

例如,我将 Firebase 数据库用于我的应用程序。是否可以在仪器测试中进行这种测试:

@Test
public void tryFirebaseTest() throws FieldRequiredException, InvalidPhoneException, InvalidEmailException, InterruptedException {

    UserManager userManager = new UserManager(new FIRUserStorage(FirebaseDatabase.getInstance().getReference()));
    userManager.createUser("test@test.com", "test", "+4778787", "", new CreateUserCallback() {
        @Override
        public void userCreated(User user) {
            assertNotNull(user);
        }

        @Override
        public void userExistError() {
            fail();
        }

        @Override
        public void userDatabaseError(String errorMessage) {
            fail();
        }
 });

}

在这种情况下,测试不会进入回调。

【问题讨论】:

  • 在这种情况下,您也应该使用 Espresso。

标签: android unit-testing testing integration-testing android-testing


【解决方案1】:

对于 Firebase 应用的集成测试,您目前有两种选择:

  1. 运行local-firebase 服务器,如this article 中所述,并在 jUnit/TestNG 或您喜欢的任何自动化框架中编写集成测试。
  2. 编写 Espresso 测试以测试完整的集成

有一些工具可以帮助模拟,例如 fingular,但您必须使用它来了解每个项目的运行情况以及集成测试的程度.

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-07-07
    • 1970-01-01
    • 2015-03-18
    • 1970-01-01
    • 2012-08-21
    • 2010-10-22
    • 2014-08-09
    相关资源
    最近更新 更多