Pi Vinci Pi Vinci - 1 year ago 195
Android Question

Jvm options in android when run gradlew test

I have a project that using Robolectric for unit test purpose. This project uses Robolectric 3.0 and need to add

options in Virtual Machine options.

In Android Studio, I created new JUnit configuration in
Run > Edit Configurations...
and then set
VM Options
-ea -noverify
. With this way I success to run my unit test. This is image about my configure, view Here

However, for continuous deployment, I need run unit test with command line. So I use
./gradlew test
to run unit test. I also add
org.gradle.jvmargs=-ea -noverify
file. Unfortunately, it doesn't work. I can run unit test but I got
and I think that
was not load.

So, my question is, how to make
load or do you know any way to fix my vm options problem?

Answer Source

I found that we can add this block to app's build.gradle to solve this problem

tasks.whenTaskAdded { theTask ->
    def taskName = theTask.name.toString()
    if ("testDevDebug".toString().equals(taskName)) {
        theTask.jvmArgs('-ea', '-noverify')

DevDebug is my build variant.

Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download