Jest/Storyshots тестирует адаптивные элементы в моих компонентах

Я использую реагирующий материал в сочетании с сборником рассказов и историями. Я пытаюсь понять, как я могу тестировать адаптивные элементы в материале-интерфейсе с помощью шутки или сюжетов с помощью сборника рассказов

у меня есть Hidden элементы в моих компонентах, таких как следующие

<Hidden xsDown>
    {displayText}
</Hidden>

и истории, которые выглядят примерно как

storiesOf("Card", module)
    .addDecorator(muiTheme(myTheme))
    .add("options bar", () => (
        <Card {...someProps}/>
    ));

Я попытался изменить точки останова в своей теме, что оказывает влияние при просмотре в сборнике рассказов. Однако независимо от того, что я пытался, Hidden элемент никогда не отображается в моих снимках.

Я также пытался не использовать Hidden элемент и попытался className стили для установки display: none если theme.breakpoints.down('xs') правда. Это производит элемент в моем снимке, как

<h6
   className="MuiTypography-root CardOptions-label-1170 MuiTypography- 
 subtitle2"
>
   View Route
</h6>

но ничто в этом блоке не говорит мне, что элемент скрыт на xs экраны.

Похоже, я должен быть в состоянии как-то переключаться xsDown в Hidden элемент должен быть истинным или ложным в сборнике рассказов, чтобы рендеринг в сторишот выполнялся или не отображался элемент в моем снимке, но мне не повезло с этим разобраться.

Я думаю, в общем, мне просто интересно, как большинство людей с шуткой тестируют адаптивные интерфейсы. Кажется, что я должен быть в состоянии сделать это с помощью снимков, но, возможно, я что-то упустил.

Спасибо за вашу помощь

0 ответов

На данный момент Storybook не предоставляет библиотеку адаптивного тестирования пользовательского интерфейса из коробки.

Однако вы можете использовать дополнительную библиотеку, такую ​​как Chroma (компания, стоящая за Storybook) или тест снимков экрана React.

Какой из них вы выберете, действительно зависит от других факторов.

Подробнее о Chroma: https://blog.hichroma.com/responsive-ui-component-testing-6d38b7e89dd4

Другие вопросы по тегам