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 ITestInvocationListener öğesine rapor veren yeni bir PythonUnitTestResultParser oluşturun.

PythonUnitTestResultParser ( listeners, String runName) PythonUnitTestResultParser ( listeners, String runName)

Verilen ITestInvocationListener rapor veren yeni bir PythonUnitTestResultParser oluşturun.

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 ITestInvocationListener rapor veren yeni bir PythonUnitTestResultParser oluşturun.

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