Mutation wurde nicht beendet, wenn es mit einer Methode mit einem automatisch injizierten Feld geschehen sollte

8

Ich habe folgendes:

%Vor%

und der folgende Test:

%Vor%

Der Test wird wie erwartet durchgeführt. Wenn ich es durch PIT führe, erhalte ich folgendes Ergebnis:

%Vor%

Zeile # 33 ist im Klassencode hervorgehoben.

Die untersuchten Tests sind wie folgt:

  • %Code% (32 ms)
  • %Code% (3 ms)

Jetzt:

  • Wenn ich die Testaufrufparameter ( my.package.UnsetPropertyTest.testCallsSetPropertyWithCorrectParameters(my.package.UnsetPropertyTest) ) ändere, schlägt der Test fehl. Wie erwartet
  • Wenn ich die Argumente der Assertion ( my.package.UnsetPropertyTest.testUnsetThrowsForIncorrectNumberOfParameters(my.package.UnsetPropertyTest) ) ändere, schlägt der Test fehl. Wie erwartet.
  • Wenn ich den im ersten Codeblock markierten Funktionsaufruf manuell auskommentiere, schlägt der Test fehl.

Warum überlebt die Mutation?

Ich verwende Java 8, Mockito 1.9.5 und PIT 1.1.4.

    
Madara Uchiha 16.03.2015, 12:59
quelle

0 Antworten