Jaka jest różnica między Cy.Readfile i Cy.Fixture?

Wygląda na to, że oboje robią prawie tak samo: daje treść pliku. Z wyjątkiem tego, że cy.fixture( ... ) patrzy wewnątrz fixture - folder i cy.readFile( ... ) wygląda z korzenia projektu.


A jeśli mogą być używane, czy są tam, używasz jednego z dwóch?

2
Zeth 25 październik 2020, 20:26

1 odpowiedź

Najlepsza odpowiedź

Główną różnicą jest konceptualny, ale istnieje trochę Praktyczne rozważania.

Oprawy oznaczają dla plików używanych tylko dla testów, np. Dane testowe symboliczne, odpowiedzi próbki i tak dalej. W innych warunkach urządzenia są plikami, które nie byłyby częścią projektu, jeśli nie miałeś testów.

W tym celu urządzenia zapewniają pewne Utilities wygody, takich jak je rurociąg Bezpośrednio do cy.route():

cy.route('GET', '/users', 'fixture:users');

readFile() Z drugiej strony jest ogólną metodą, którą możesz Użyj, aby czytać więcej lub mniej. Jest to dobry kandydat, jeśli musisz przeczytać pliki, które są częścią regularnego kodu projektu, np. Tłumaczenia:

cy.readFile('translations/en_US.json').then(...);
3
Etheryte 25 październik 2020, 20:31