7.1 Firebase打包文档

AirtestProject开发组与Google-Firebase合作,为测试脚本在Firebase的云测试平台上的运行提供了支持。AirtestIDE目前集成了Firebase插件,提供了将测试脚本打包成apk,然后通过instrumentation在手机上运行测试脚本的一种测试模式。

我们可以通过下图来了解firebase包是如何在手机上运行测试脚本的。

firebase_structure

注:矩形代表测试apk;五边形表示游戏apk;蓝色字体表示python代码;黑色字体代表java代码

接下来,我们看下如何才能在Airtest-IDE中打出instrumentation包,并运行在手机上呢。

7.1.1 打包环境配置

在使用AirtestIDE的Firebase打包功能,需要配置java环境(需重签APK包):

7.1.2 打包流程

  • 在AirtestIDE中调试好测试脚本-
  • 点击下拉菜单”Firebase”-“Build Instrumentation Test Apk”可以打包单个脚本。点击下拉菜单”Firebase”-“Multiple Scripts Build”可以选择多脚本打包,打包顺序会按照从上到下的脚本顺序完成:
    • firebase_structure
  • 等待打包完成,AirtestIDE会将测试脚本及python环境注入apk包体并进行重签名。
    • firebase_structure
  • 脚本打包完成后,点击open可以打开apk所在路径
    • firebase_structure

7.1.3 运行测试脚本

  • 将测试apk与被测应用apk同时安装到手机上
  • 然后用adb指令启动测试脚本 adb shell am instrument -w com.netease.open.airbase/android.support.test.runner.AndroidJUnitRunner

7.1.4 注意事项

  • 部分airtest接口,无法使用该方式执行,例如
    • clear_app
    • install_app
    • uninstall_app
  • 安卓原生应用的poco无法使用,因为无法从一个app去启动另外一个app。但是游戏引擎的poco均可使用。
  • 打包时,因为涉及到文件删除操作,所以不要使用目标包体的目录(有些用户习惯性直接在生成包体的目录打开命令行安装,会导致无法进行下一次打包)