2016-06-02 3 views
0

При визуализации компонента с использованием shallow или mount компонент отображается в памяти и не привязан к DOM.TDD с ферментом мелководье и крепление?

Это означает, что, хотя я выполняю свои тесты, на самом деле я не вижу никакого вывода в браузере.

Как я должен работать с Test Driven Development, если я не вижу, как компонент, который я разрабатываю, выглядит так, как должен? (стиль css, размеры и т. д.)

ответ

0

Если вы хотите, чтобы ваш компонент был визуализирован, установите «браузер», а не используйте метод render() Enzyme. Обязательно наличие окна (см. Jsdom для подделки окна). Но ИМО, вы должны быть в состоянии сделать все ваши испытания с мелкой или монтировки, то API хорошо

+0

Спасибо, но если я делаю TDT, я создаю весь свой компонент, используя только те тесты, которые я создаю для него, и я думаю, что у меня будет шанс увидеть, что я создаю ... Это было бы просто невозможно создать кнопку, не зная, как она выглядит. –

+0

Хммм, в этом случае вы не можете подделать окно dom. Вы должны запустить свой тест «в браузере», чтобы иметь возможность проверять JS наш CSS, как вы хотите –

+0

Да, я уже запускаю карму в Chrome, когда я разрабатываю ... –

0

Как я должен сделать Test Driven Development, если я не могу видеть, если компонент Я развивающийся выглядит так, как должен? (CSS стиль, размеры и т.д.)

Цель Фермент не визуальный тест регрессии, для этого вам придется использовать такие инструменты, как PhantomJS, незавершенная статья https://css-tricks.com/visual-regression-testing-with-phantomcss/

Вы можете достичь своего рода тестирования моделирования проверяя, имеет ли ваш компонент правильные селекторы при их рендеринге. например

it('should add the "selected" class when a click happend to one of the Elements',() => { 
    const wrapper = mount(<Elements />); 

    const option = wrapper.find('h5'); 
    expect(option.hasClass('selected')).to.equal(false); 
    option.simulate('click'); 
    expect(option.hasClass('selected')).to.equal(true); 
}); 
+0

На самом деле я не хочу тестировать стиль, я просто хочу посмотреть мой компонент, пока я его пишу. –

+0

@Avraam Mavridis: Я пытаюсь проверить функциональность входа, используя ** неглубокий ** api. Но, похоже, не работает. Невозможно ли проверить функциональность фермента + мокко? –

Смежные вопросы