使 Android 个测试项目在没有源代码的情况下可用 ("make apk of the test-project")

Make Android test project available without source code ("make apk of the test-project")

我有一个基于 InstrumentationTestCase 并使用 AndroidJUnitRunner 的 Android 测试项目。

我需要将我的项目提供给另一方,但我不想提供源代码。

目前我有两个项目:

Java 项目目前正在以编程方式启动 AndroidTestProject 运行ning "gradlew connectedCheck"。

现在我想把安装程序和测试工程都给别人但是我不想公开源代码。 所以这相当于创建 apk,但用于测试项目。

所以我的两个问题是:

我不知道这是否重要所以这里是:我的项目层次结构是

Project
    .gradle
    .idea
    app
        build
        src
            androidTest
                java
                    package
                        sub-packages and java files
            main
                AndroidManifest
            app.iml
            build-gradle
            proguard-rules.pro
    build
    gradle
    ...

我要更改我的完整答案!没想到这么简单。

在 android 工作室的右侧会有 gradle window。打开它并刷新一次以在其中查看您当前的项目。

在任务部分,构建部分 -> assemble 和 assemble 测试选项将在那里。 Assemble 用于普通 apk,assemble test 用于测试 apk。这些将在 app/build/output/apk 文件夹中生成。

至于运行以编程方式设置它们,请使用gradle tasks (command line function in there for ./gradlew test --continue ) which will run tests after the build or if u want to use java use it as here。对于 shell 命令,使用 C 总是很容易;)

编辑 2:正如 Ines 在评论中提到的那样,运行 您可以使用的测试:

adb install name-of-the-apk.apk 
adb shell am instrument -w packageWithTest/android.support.test.runner.AndroidJUnitRunner

更多处决见here