当我在更改某些代码后运行我的测试时,在重新运行测试时仍然会使用以前的代码状态。
Running tests
Test running started
java.lang.NoSuchMethodError: com.example.app.support.ConfiguredWebViewClient.<init>
at com.example.app.support.ConfiguredWebViewClientTest.testOverrideUrlLoading(ConfiguredWebViewClientTest.java:7)
at java.lang.reflect.Method.invokeNative(Native Method)
at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:190)
at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:175)
at android.test.InstrumentationTestRunner.onStart(InstrumentationTestRunner.java:555)
at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1661)
Finish
上面的NoSuchMethodError的问题在于没有testOverrideUrLoading名称的方法。它被不同的方法所取代。这意味着Android Studio会以某种方式挂在旧类文件上。
没有效果的事情:当我执行运行./gradlew connectedInstrumentTest
时,测试成功运行,问题在Android Studio中解决。
我想知道在IDE中工作时如何强制这种行为。