Was ist der Zweck der Annotationen @SmallTest, @MediumTest und @LargeTest in Android?
99
Ich bin neu in Android und habe Beispielcode mit diesen Anmerkungen gesehen. Beispielsweise:
@SmallTestpublicvoid testStuff(){TouchUtils.tapView(this, anEditTextView);
sendKeys("H E L P SPACE M E PERIOD");
assertEquals("help me.", anEditTextView.getText().toString());}
Im Zusammenhang mit dem obigen Code, ist es tatsächlich DO nichts außer leave eine Notiz für andere Entwickler? Erzwingt es etwas? Gibt es Tools, die diese Anmerkung verwenden? Was ist der Zweck in der Android-Entwicklung?
Sie können eine Gruppe von Tests ausführen, die mit bestimmten Anmerkungen versehen sind.
OK, kurz gesagt, ich kann nur die @ SmallTest-Testsuite mit ausführen adb shell am instrument -w -e size small com.android.foo/android.support.test.runner.AndroidJUnitRunner. danke
kosiara - Bartosz Kosarzycki
Wie geben wir die Annotation in einem Gradle-Befehl an? Zum Beispiel so etwas wie:./gradlew connectedDebugAndroidTest -size MediumTest
Mr-IDE
@ Mr-IDE, hast du die Antwort bekommen?
John
138
Dieser Blog-Beitrag erklärt es am besten. Grundsätzlich ist es das Folgende:
Klein: Dieser Test interagiert nicht mit einem Dateisystem oder Netzwerk.
Mittel: Greift auf Dateisysteme auf einer Box zu, auf der Tests ausgeführt werden.
Groß: Zugriff auf externe Dateisysteme, Netzwerke usw.
Laut dem Blog der Android-Entwickler sollte ein kleiner Test <100 ms, ein mittlerer Test <2 s und ein großer Test <120 s dauern.
Auf dieser Seite (Suche nach "@SmallTest") erfahren Sie, wie Sie angeben, welche Tests ausgeführt werden.
Ich sehe (und erinnere mich, diesen Artikel letzten Monat gelesen zu haben). Aber tut es im Zusammenhang mit dem obigen Code tatsächlich etwas anderes, als anderen Entwicklern eine Notiz zu hinterlassen? Erzwingt es etwas? Gibt es Tools, die diese Anmerkung verwenden? Was ist der Zweck in der Android-Entwicklung?
Eric Palakovich Carr
3
@Eric Mit dem Android TestRunner können Sie festlegen, welche Testgröße ausgeführt werden soll.
Sie können auch mit Anmerkungen versehen POJO Unit - Tests mit @Category(MediumTest.class)oder @Category(LargeTest.class)usw. durch eigene Definition von Kategorien - siehe die Testkategorien für ein Beispiel Repo
adb shell am instrument -w -e size small com.android.foo/android.support.test.runner.AndroidJUnitRunner
. danke./gradlew connectedDebugAndroidTest -size MediumTest
Dieser Blog-Beitrag erklärt es am besten. Grundsätzlich ist es das Folgende:
Laut dem Blog der Android-Entwickler sollte ein kleiner Test <100 ms, ein mittlerer Test <2 s und ein großer Test <120 s dauern.
Auf dieser Seite (Suche nach "@SmallTest") erfahren Sie, wie Sie angeben, welche Tests ausgeführt werden.
quelle
Sie können auch mit Anmerkungen versehen POJO Unit - Tests mit
@Category(MediumTest.class)
oder@Category(LargeTest.class)
usw. durch eigene Definition von Kategorien - siehe die Testkategorien für ein Beispiel Repoquelle