Próbuję uruchomić test ze strony Robolectric.org na stronie Writing Your First Test. Dany test wygląda następująco:importowanie poprawnej metody AssertThat dla testu Robolectric
@Test
public void clickingLogin_shouldStartLoginActivity() {
WelcomeActivity activity = Robolectric.setupActivity(WelcomeActivity.class);
activity.findViewById(R.id.login).performClick();
Intent expectedIntent = new Intent(activity, WelcomeActivity.class);
assertThat(shadowOf(activity).getNextStartedActivity()).isEqualTo(expectedIntent);
}
otrzymuję ten błąd kompilacji: Cannot resolve method 'assertThat(android.content.Intent)
.
Dwie możliwości, które widzę dla importowania tej metody to: org.hamcrest.MatcherAssert.assertThat
i org.junit.Assert.assertThat
, z których żadna nie ma jednokrotnej metody assertThat
, jak jest używana w tym teście Robolectric.
Moja aplikacji build.gradle
ma następujące zależności:
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:23.1.0'
compile 'com.android.support:design:23.1.0'
testCompile "org.robolectric:robolectric:3.0"
testCompile 'junit:junit:4.12'
}
Co ramy/biblioteki jest to badanie przy użyciu?
To nie jest ani '' hamcrest' junit' lub twierdzenia. Myślę, że jest to 'Android AssertJ' lub po prostu' AssertJ' –
Tak było. Dziękuję Ci! Jeśli chcesz opublikować odpowiedź; Zgodzę się. – Michiyo
Możesz również użyć prawdy Google dla asercji: https://github.com/google/truth –