Ich habe folgende Komponenten:
%Vor% Und ich möchte einen Test einrichten, um zu sehen, ob die App
-Komponente eine Hello
-Komponente enthält. Ich habe Folgendes versucht, indem ich Tape
und Enzyme
:
Aber das Ergebnis war, dass die length
-Eigenschaft des find
-Ergebnisses gleich 0
war, als ich erwartet hatte, dass sie gleich 1
ist. Also, wie finde ich meine Hello
Komponente?
Es gibt ein paar Dinge, die Sie in diesem Fall tun können. Enzyme können Komponentenkonstruktoren basierend auf den statischen .displayName
- oder .name
-Eigenschaften des Konstruktors oder durch referenzielle Gleichheit abgleichen. Daher sollten die folgenden Ansätze funktionieren:
Sie können die tatsächlichen Komponenten in Ihre Tests importieren und sie mithilfe direkter Referenzen auf die Komponente finden:
%Vor%Wenn Sie benannte Funktionsausdrücke zum Erstellen Ihrer zustandslosen funktionalen Komponenten verwenden, sollten die Namen weiterhin funktionieren.
%Vor%.displayName
Eigenschaft Sie können den Komponenten eine statische Eigenschaft .displayName
hinzufügen:
Tags und Links unit-testing testing reactjs enzyme stateless