joshskeen / android-studio-robolectric-example Goto Github PK
View Code? Open in Web Editor NEWhow to set up robolectric to work with Android Studio and gradle
how to set up robolectric to work with Android Studio and gradle
I believe Fest has been superseded by assertj-android. Thoughts on using it over fest?
For the first time trying to choose "Test Artifact: Unit tests" option could be unavailable due to missing option in Settings
Solution: Settings(Ctrl+Alt+S) -> Gradle -> Experimental -> Mark "Enable Unit test support" option
Details available at: http://tools.android.com/tech-docs/unit-testing-support
Hi Josh !
First of all thanks by the example !
I m new to Roboletric and I m trying to run the example on Android Studio 1.2. The Android installations is new and there is no Roboletric plugins installed.
I just clone the project from Github, set the Build Variant to Unit Test, right click on the Project and run MyActivityTest. Before this I just resync the gradle build.
The problem is that the test throws a java.lang.NoSuchMethodException and I just can't find what is missing... Could you take a look on the error message ?
Console:
Testing started at 14:26 ...
14:26:58: Executing external tasks 'cleanTest test --tests com.example.joshskeen.myapplication.MyActivityTest'...
Configuration on demand is an incubating feature.:app:cleanTestUP-TO-DATE:app:preBuildUP-TO-DATE:app:preDebugBuildUP-TO-DATE:app:checkDebugManifest:app:prepareDebugDependencies:app:compileDebugAidlUP-TO-DATE:app:compileDebugRenderscriptUP-TO-DATE:app:generateDebugBuildConfigUP-TO-DATE:app:generateDebugAssetsUP-TO-DATE:app:mergeDebugAssetsUP-TO-DATE:app:generateDebugResValuesUP-TO-DATE:app:generateDebugResourcesUP-TO-DATE:app:mergeDebugResourcesUP-TO-DATE:app:processDebugManifestUP-TO-DATE:app:processDebugResourcesUP-TO-DATE:app:generateDebugSourcesUP-TO-DATE:app:compileDebugJava:app:preCompileDebugUnitTestJava:app:compileDebugUnitTestJava:app:compileDebugUnitTestSources:app:mockableAndroidJar:app:assembleDebugUnitTest:app:testDebugcom.example.joshskeen.myapplication.MyActivityTest > clickingClickMeButtonChangesHelloWorldText FAILED java.lang.RuntimeException
Caused by: java.lang.RuntimeException
Caused by: java.lang.NoSuchMethodException
com.example.joshskeen.myapplication.MyActivityTest > myActivityAppearsAsExpectedInitially FAILED java.lang.RuntimeException
Caused by: java.lang.RuntimeException
Caused by: java.lang.NoSuchMethodException
2 tests completed, 2 failed:app:testDebug FAILEDFAILURE: Build failed with an exception.* What went wrong:
Execution failed for task ':app:testDebug'.
There were failing tests. See the report at: file:///home/elcio/AndroidStudioProjects/android-studio-robolectric-example/app/build/reports/tests/debug/index.html
- Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
BUILD FAILEDTotal time: 10.662 secs
14:27:11: External tasks execution finished 'cleanTest test --tests com.example.joshskeen.myapplication.MyActivityTest'.
Gladle build:
Executing tasks: [cleanTest, test]
Configuration on demand is an incubating feature.
:app:cleanTest UP-TO-DATE
:app:preBuild UP-TO-DATE
:app:preDebugBuild UP-TO-DATE
:app:checkDebugManifest
:app:prepareDebugDependencies
:app:compileDebugAidl UP-TO-DATE
:app:compileDebugRenderscript UP-TO-DATE
:app:generateDebugBuildConfig UP-TO-DATE
:app:generateDebugAssets UP-TO-DATE
:app:mergeDebugAssets UP-TO-DATE
:app:generateDebugResValues UP-TO-DATE
:app:generateDebugResources UP-TO-DATE
:app:mergeDebugResources UP-TO-DATE
:app:processDebugManifest UP-TO-DATE
:app:processDebugResources UP-TO-DATE
:app:generateDebugSources UP-TO-DATE
:app:compileDebugJava
:app:preCompileDebugUnitTestJava
:app:compileDebugUnitTestJava
:app:compileDebugUnitTestSources
:app:mockableAndroidJar
:app:assembleDebugUnitTest
:app:testDebug
com.example.joshskeen.myapplication.MyActivityTest > clickingClickMeButtonChangesHelloWorldText FAILED
java.lang.RuntimeException
Caused by: java.lang.RuntimeException
Caused by: java.lang.NoSuchMethodException
com.example.joshskeen.myapplication.MyActivityTest > myActivityAppearsAsExpectedInitially FAILED
java.lang.RuntimeException
Caused by: java.lang.RuntimeException
Caused by: java.lang.NoSuchMethodException
2 tests completed, 2 failed
:app:testDebug FAILED
FAILURE: Build failed with an exception.
What went wrong:
Execution failed for task ':app:testDebug'.
There were failing tests. See the report at: file:///home/elcio/AndroidStudioProjects/android-studio-robolectric-example/app/build/reports/tests/debug/index.html
Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
BUILD FAILED
Total time: 10.662 secs
Thanks,
Elcio A.
I opened the project and got it compiling without errors. However, when I run a test in the IDE, I get
Error: Could not find or load main class 2.app.build.intermediates.classes.debug:.Users.rakesh.AndroidStudioProjects.android-studio-robolectric-example-master
Please show Run Configurations to configure it....because it doesn't run with Unit, and Gradle config you didn't show
Robolectric has their own project on getting started with Robolectric and Android Studio. It's at deckard/gradle. Have you taken a look at it? Thought it was worth mentioning.
when executing test its fails with error:
Downloading: org/sonatype/oss/oss-parent/7/oss-parent-7.pom from repository sonatype at https://oss.sonatype.org/content/groups/public/
Unable to locate resource in repository
[INFO] Unable to find resource 'org.sonatype.oss:oss-parent:pom:7' in repository sonatype (https://oss.sonatype.org/content/groups/public/)
Downloading: org/sonatype/oss/oss-parent/7/oss-parent-7.pom from repository central at http://repo1.maven.org/maven2
Error transferring file: Connection refused: connect
[WARNING] Unable to get resource 'org.sonatype.oss:oss-parent:pom:7' from repository central (http://repo1.maven.org/maven2): Error transferring file: Connection refused: connect
and yes when looking up: https://oss.sonatype.org/content/groups/public/org/sonatype/oss/oss-parent/
there is no 7, only 8 and 9
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.