Android: unit testing with gradle -
i have following unit test can run fine in android studio, trying set continuous integration need gradle able run it.
package com.smartsocialmedia.tests; import android.test.instrumentationtestcase; import com.smartsocialmedia.utility.dbconnector; import org.apache.http.message.basicnamevaluepair; import org.json.jsonobject; import java.util.arraylist; public class maintest extends instrumentationtestcase { /* * testing dbconnector * public jsonobject getjsonobject(arraylist<basicnamevaluepair> params, boolean isget) * pass false second parameter if used rather post * in case calling auth/login in api */ public void testgetjsonobject() throws exception { //create arraylist of basicnamevaluepair represent login information. arraylist<basicnamevaluepair> postparams = new arraylist<basicnamevaluepair>(); postparams.add(new basicnamevaluepair("email", "myemail")); postparams.add(new basicnamevaluepair("password", "mypassword")); dbconnector db = new dbconnector("auth/login"); jsonobject jsonobject = db.getjsonobject(postparams, false); //check server response jsonobject assertnotnull(jsonobject); //check have expected parameters in response int valid = jsonobject.getint("valid"); assertequals(valid, 1); } }
basically./gradlew doesn't test ... need know need change in gradle in order work.
buildscript { repositories { mavencentral() } dependencies { classpath 'com.android.tools.build:gradle:0.9.+' } } apply plugin: 'android' repositories { mavencentral() } android { compilesdkversion 19 buildtoolsversion '19.0.0' lintoptions { checkreleasebuilds false // or, if prefer, can continue check errors in release builds, // continue build when errors found: abortonerror false } defaultconfig { minsdkversion 14 targetsdkversion 19 versioncode 7 versionname "1.0.5" testpackagename "com.smartsocialmedia.tests" } buildtypes { release { runproguard false proguardfiles getdefaultproguardfile('proguard-android.txt'), 'proguard-rules.txt' } } } dependencies { compile 'com.android.support:support-v4:18.0.0' compile 'org.apache.httpcomponents:httpmime:4.1.2@jar' compile 'com.github.chrisbanes.actionbarpulltorefresh:library:+' compile files('libs/universal-image-loader-1.9.1-with-sources.jar') }
you need have @ least 1.1.0-rc1 (2015/02/02) android gradle plugin
unit testing support. unit testing code run on local jvm, against special version of android.jar compatible popular mocking frameworks (e.g. mockito).
Comments
Post a Comment