mercredi 3 février 2016

Questions about Android Unit Test with gradle or android studio

I am writing some test cases in my project and I have bunch questions about android unit test with android studio & gradle I met in recent days and cannot get the good answers after searching.

Here are situations I have met and they are really bothering me.

Situation 1:

When I put the test cases in androidTest folder and run graldew cAT and also use the annotation @AndroidJUnit4 for the test class. I can run the unit test and get the right results. But after I just changed the @AndroidJUnit4 to @MockitoJUnitRunner (I need mock the context). The android studio or gradle cannot find any test, only tell "empty suit".

Situation 2:

When I put the test cases in test folder and run graldew test and also use the annotation @MockitoJUnitRunner. It can find the tests successfully. But I guess it only run locally. If the test cases dependent some native lib, it will give the failure message like: java.lang.UnsatisfiedLinkError: no libxx in java.library.path

So here are questions:

Question 1 :

It seems that we can put the test code in src/test or src/androidTest. So what are differences between these two folders?

Question 2:

What are differences between gradlew cAT and gradle test? Are these two commands related to folder (test/androidTest folder I mentioned) in projects?

Question 3:

In my situation, I need write some test cases, which dependent the Context and native so. What should I do for that?

Thanks in advice. Any suggestions will be appreciated.

Aucun commentaire:

Enregistrer un commentaire