Ich kann den Robolectic-Test nicht ausführen, wenn ich die neue Appcompat-Support-Bibliothek verwende, die seit dem Erscheinen von Android Lollipop verfügbar ist. Ich bin gefolgt:
Mein aktueller Fortschritt ist hier verfügbar: Ссылка
Meine Konfiguration (destilliert) ist:
%Vor%...
%Vor%...
%Vor%Ich habe hier ein Problem angesprochen: Ссылка (schau hier für mehr Details).
Das sind Fehler, die ich bekomme:
%Vor%HINWEIS : Ab dem 7.7.15 Roboelectric 3.0 < a> wurde veröffentlicht. Es löst das Problem und macht diese Antwort nicht länger notwendig.
Alte Antwort:
Bis Robolectric 3.0 herauskommt, hier ist eine Lösung.
%Vor%Passen Sie dann Ihre benutzerdefinierte RobolectricRunner-Klasse an
%Vor% Grundsätzlich teilen wir der JVM nur mit, ein anderes App-Thema zu verwenden. Dann benutze diesen TestRunner wie du es normalerweise mit @RunWith(MyRobolectricTestRunner.class)
tun würdest.
Hinweis:
Dies betrifft Aktivitäten, bei denen nur extend Activity
, andere Probleme desselben Typs für Aktivitäten auftreten, die extend ActionBarActivity
BEARBEITEN: Ab dem 07.04.15 ist Robolectric 3.0-snapshot build verfügbar, das für ActionBarActivity
verantwortlich ist. Weitere Informationen finden Sie in den Links in den Kommentaren
Mit diesem benutzerdefinierten RobolectricTestRunner wurde ein ähnliches Problem behoben, das ich hatte. Dies bedeutet auch, dass Sie @Config (emulateSdk = 18) nicht bei jedem Test benötigen.
Ersetzen Sie: @RunWith (RobolectricTestRunner.class)
mit: @RunWith (MyRobolectricTestRunner.class) in all deinen Robolectric-Tests
%Vor%Dankeschön: Ссылка
Tags und Links android robolectric appcompat