Branch Coverage für Redux Reducer

9

Sagen Sie, ich habe den folgenden Reduzierer:

%Vor%

und ich teste mit jest mit:

%Vor%

Dies erzeugt eine Zweigabdeckung von 4/5 . Nach ein wenig Nachdenken / Entfernen und / oder erneutem Hinzufügen von Zeilen bin ich bei der Verzweigungslogik angekommen, die auf dem initialState gesetzt ist. Was fast Sinn ergibt. Außer:

1) Warum deckt der letzte Test mit einem leeren myReducer() -Aufruf diesen Fall nicht ab?

Wenn der Druckminderer reduziert ist auf:

%Vor%

Die Tests (die jetzt fehlschlagen) haben eine Zweigabdeckung von 1/1.

Was ist hier los?

EDIT: Wie pro Anfrage, füge ich die Konfiguration hinzu. Ich gebe den folgenden jest.json zu scherzen:

%Vor%

EDIT2: Der folgende Test hat ebenfalls keinen Einfluss auf die Testabdeckung:

%Vor%

Ich verstehe immer noch nicht, warum die anfängliche Standardtestimplementierung aus Sicht der Zweigabdeckung nicht äquivalent war.

    
Abraham P 09.02.2017, 12:32
quelle

2 Antworten

2

Der letzte Test mit myReducer() deckt den Fall ab, in dem der Standardwert für initialState , der in Ihrem Fall {foo: ''} ist, angewendet wird.

    
apoh 18.02.2017 20:55
quelle
1

Ich denke, was fehlt, ist, dass Sie keinen Test für den default Zweig von select haben. Sie müssen

hinzufügen %Vor%     
David Bradshaw 18.02.2017 21:10
quelle