PythonUnitTestResultParser
public class PythonUnitTestResultParser
extends MultiLineReceiver
java.lang.Object | ||
↳ | com.android.ddmlib.MultiLineReceiver | |
↳ | com.android.tradefed.testtype.PythonUnitTestResultParser |
Python'un en iyi çerçevesiyle çalıştırılan testlerin çıktısını yorumlar ve bunu bir dizi ITestInvocationListener
üzerindeki çağrılara çevirir. Bu testlerden elde edilen çıktılar şu EBNF gramerini takip eder:
TestReport ::= TestResult* Satır TimeMetric [FailMessage*] Durumu. TestResult ::= string \u201c(\u201cstring\u201d)\u201d \u201c\u2026\u201d SingleStatus. FailMessage ::= EqLine \u201cERROR:\u201d string \u201c(\u201cstring\u201d)\u201d Line Traceback Line. SingleStatus ::= \u201çok\u201d | \u201cHATA\u201d. TimeMetric ::= \u201cRan\u201d integer \u201ctests in\u201d float \u201ds\u201d. Durum ::= \u201cTamam\u201d | \u201cFAILED (hatalar=\u201d int \u201c)\u201d. Geri izleme ::= string+.
Örnek çıktı (geçiyor): test_size (test_rangelib.RangeSetTest) ... tamam test_str (test_rangelib.RangeSetTest) ... tamam test_subtract (test_rangelib.RangeSetTest) ... tamam test_to_string_raw (test_rangelib.RangeSetTest) ... tamam test_union (test_rangelib. RangeSetTest) ... tamam
-------------------------------------------------- -------------------- 0,002 saniyede 5 test çalıştırıldı
TAMAM
Örnek çıktı (başarısız oldu) test_size (test_rangelib.RangeSetTest) ... ERROR
=================================================== ==================== HATA: test_size (test_rangelib.RangeSetTest) ---------------------- ------------------------------------------------ Geri iz ( en son çağrı son): "test_rangelib.py" dosyası, satır 129, test_rangelib'de Raise ValueError() ValueError --------------------------- --------------------------------- 0,001 saniyede 1 test yapıldı BAŞARISIZ (hatalar=1)
Birkaç uç durumla örnek çıktı (başarısız): testError (foo.testFoo) ... ERROR testExpectedFailure (foo.testFoo) ... beklenen hata testFail (foo.testFoo) ... FAIL testFailWithDocString (foo.testFoo) foo bar . .. FAIL testOk (foo.testFoo) ... tamam testOkWithDocString (foo.testFoo) foo bar ... tamam testSkipped (foo.testFoo) ... 'reason foo' atlandı testUnexpectedSuccess (foo.testFoo) ... beklenmedik başarı
=================================================== ==================== HATA: testError (foo.testFoo) ---------------------- ------------------------------------------------ Geri iz ( en son çağrı son): Dosya "foo.py", satır 11, testError'da self.assertEqual(2+2, 5/0) ZeroDivisionError: sıfıra göre tamsayı bölümü veya modulo
=================================================== ==================== BAŞARISIZ: testFail (foo.testFoo) ---------------------- ------------------------------------------------ Geri iz ( en son çağrı son): Dosya "foo.py", satır 8, testFail self.assertEqual(2+2, 5) AssertionError: 4 != 5
=================================================== ==================== BAŞARISIZ: testFailWithDocString (foo.testFoo) foo çubuğu -------------------- -------------------------------------------------- Traceback (en son çağrı): "foo.py" dosyası, satır 31, testFailWithDocString self.assertEqual(2+2, 5) AssertionError: 4 != 5
-------------------------------------------------- -------------------- 0,001 saniyede 8 test çalıştırıldı
BAŞARISIZ (başarısızlıklar=2, hatalar=1, atlanan=1, beklenen hatalar=1, beklenmeyen başarılar=1)
YAPILACAK: Sınıfın tamamını yeniden düzenlemeyi düşünün; işlem şu anda oldukça karmaşık.
Özet
Kamu inşaatçıları | |
---|---|
PythonUnitTestResultParser ( ITestInvocationListener listener, String runName) Verilen | |
PythonUnitTestResultParser ( listeners, String runName) PythonUnitTestResultParser ( listeners, String runName) Verilen | |
PythonUnitTestResultParser ( listeners, String runName, includeFilters, excludeFilters) PythonUnitTestResultParser ( listeners, String runName, includeFilters, excludeFilters) PythonUnitTestResultParser ( listeners, String runName, includeFilters, excludeFilters) PythonUnitTestResultParser ( listeners, String runName, includeFilters, excludeFilters) Belirtilen dahil etme ve hariç tutma filtreleriyle, verilen |
Genel yöntemler | |
---|---|
void | finalizeParser () |
boolean | isCancelled () |
void | processNewLines (String[] lines) Python birim testi çıktısını işleyin ve ayrıştırılmış sonuçları raporlayın. |
void | setFinalizeWhenParsing (boolean shouldFinalize) |
Kamu inşaatçıları
PythonUnitTestResultParser
public PythonUnitTestResultParser (ITestInvocationListener listener, String runName)
Verilen ITestInvocationListener
öğesine rapor veren yeni bir PythonUnitTestResultParser
oluşturun.
Parametreler | |
---|---|
listener | ITestInvocationListener |
runName | String |
PythonUnitTestResultParser
public PythonUnitTestResultParser (listeners, String runName)
Verilen ITestInvocationListener
rapor veren yeni bir PythonUnitTestResultParser
oluşturun.
Parametreler | |
---|---|
listeners | |
runName | String |
PythonUnitTestResultParser
public PythonUnitTestResultParser (listeners, String runName, includeFilters, excludeFilters)
Belirtilen dahil etme ve hariç tutma filtreleriyle, verilen ITestInvocationListener
rapor veren yeni bir PythonUnitTestResultParser
oluşturun.
Parametreler | |
---|---|
listeners | |
runName | String |
includeFilters | |
excludeFilters |
Genel yöntemler
finalizeParser
public void finalizeParser ()
iptal edildi
public boolean isCancelled ()
İadeler | |
---|---|
boolean |
süreçYeni Hatlar
public void processNewLines (String[] lines)
Python birim testi çıktısını işleyin ve ayrıştırılmış sonuçları raporlayın.
Bu yöntem, MultiLineReceiver
temel yöntemin aksine, tam çıktıyla yalnızca bir kez çağrılmalıdır.
Parametreler | |
---|---|
lines | String |
setFinalizeWhenParsing
public void setFinalizeWhenParsing (boolean shouldFinalize)
Parametreler | |
---|---|
shouldFinalize | boolean |