I have an Android application using the new standard gradle layout:
src/main/java src/main/resources src/instrumentTest/java src/instrumentTest/resources
I have a unit test in src/instrumentTest/java/com/example/MyUnitTest.java
that reads a file located in src/instrumentTest/resources/testfile.json
- First question: Is it the right place for placing the testing files?
- Second question: How can I read that file in a String?
I have tried these two ways for reading the file in the unit test with no success (it cannot find the file):
String myJson = new Scanner(new File("testfile.json"),"UTF-8").useDelimiter("\\A").next(); String myJson = new Scanner(new File("resources/testfile.json"),"UTF-8").useDelimiter("\\A").next();
Cheers!
You can use the assets folder of the build type your are testing. If you are testing the debug type (which is the default one):
And then you access those files with
The trick of using the debug build type prevent your testing resources to be packed in the final apk.