-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
docs(storybook): add documentation about storybook #38
Conversation
✅ Successfully deployed static |
b2d2b2e
to
13d7cc0
Compare
13d7cc0
to
65a5afe
Compare
65a5afe
to
df7cc95
Compare
df7cc95
to
3684ac1
Compare
3684ac1
to
0328686
Compare
0328686
to
5f042a1
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Статьи топ! 🔥
const searchInput = await browser.$(".DocSearch"); | ||
await searchInput.click(); | ||
|
||
// taking screenshot of a previously found item (from the element context) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Конечно же не критично, но в других статьях у нас комменты на русском в русских статьях и на английском в английских. Тем более что ты не выносишь этот код в отдельный файл, тогда почему бы не делать на языке статьи
Если в Вашем проекте используется Storybook версии 6.x, то в настройках Storybook необходимо включить сохранение json-файла с Вашими историями: | ||
|
||
```typescript | ||
// .storybook/main.js |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Здесь и везде далее — не критично, но есть специальное поле, которое позволяет очень красивенько рендерить название файла как здесь: https://testplane-ci.website.yandexcloud.net/testplane-docs/website-static/10848702025-153-1/docs/v8/config/browsers/#setup
Для этого надо написать typescript title=".storybook/main.js"
|
||
# Скриншотное тестирование со Storybook | ||
|
||
[Storybook][storybook] - это инструмент для разработки пользовательских интерфейсов на основе компонентов. Он позволяет разработчикам независимо визуализировать компоненты в различных состояниях в изолированной от остальных компонентов среде. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
—
, пожалуйста =)
``` | ||
|
||
<Admonition type="warning"> | ||
При добавлении testplane-тестов расширение Ваших story-файлов должно быть `.js` или `.ts`. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Не критично: было бы прикольно написать тут причину, я вот уже не помню например в чем дело. "tsx/jsx файлы сейчас не поддерживаются, но мы скоро их добавим" — сразу было бы супер понятнее.
|
||
## Параметры конфигурации плагина | ||
|
||
<table> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
А не стоит ли унести справочную информацию на страницу плагина в plugins?
Мне кажется прикольно если эта статья является практическим гайдом, как пользоваться testplane+storybook, а прям API мы же обычно описываем отдельно. Можно оставить ссылку просто.
@@ -0,0 +1,56 @@ | |||
# Визуальное тестирование | |||
|
|||
В testplane реализовано визуальное тестирование, с помощью которого пользователь может проверить визуальные изменения отдельного компонента, вьюпорта или всей страницы целиком. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Тут, конечно, хочется картинку, чтобы понимать как это выглядит в UI с первого взгляда. Но можно и позже добавить, когда будет new UI
blog/storybook-testing.mdx
Outdated
date: 2024-09-11T13:00 | ||
--- | ||
|
||
[Storybook][storybook] - это инструмент для разработки пользовательских интерфейсов на основе компонентов. Он позволяет разработчикам независимо визуализировать компоненты в различных состояниях в изолированной от остальных компонентов среде. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Тут сломались ссылки =(
blog/storybook-testing.mdx
Outdated
[Storybook][storybook] - это инструмент для разработки пользовательских интерфейсов на основе компонентов. Он позволяет разработчикам независимо визуализировать компоненты в различных состояниях в изолированной от остальных компонентов среде. | ||
Такой "шоурум" идеально подходит для скриншотного тестирования ваших компонентов, т.к. за счет этой изолированной среды такие тесты получаются в разы стабильнее и быстрее, чем вариант с e2e. | ||
|
||
С помощью плагина [@testplane/storybook][testplane-storybook] предоставляется возможность автоматически проверять изменения ваших компонентов с помощью скриншотного тестирования без единой строчки кода теста. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Нужно добавить <!-- truncate -->
в точку, где можно обрезать превью поста. Сейчас пост отображается целиком: https://testplane-ci.website.yandexcloud.net/testplane-docs/website-static/10848702025-153-1/blog/
buildStoriesJson: true, | ||
}, | ||
}; | ||
``` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Где-то в конце пошагового руководства не хватает ссылки на пример в нашей репе. Или я не увидел. В блоге есть, тут нет
blog/storybook-testing.mdx
Outdated
date: 2024-09-11T13:00 | ||
--- | ||
|
||
[Storybook][storybook] - это инструмент для разработки пользовательских интерфейсов на основе компонентов. Он позволяет разработчикам независимо визуализировать компоненты в различных состояниях в изолированной от остальных компонентов среде. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
В целом честно говоря не очень понятно, в чем прикол поста в блоге, если он по сути просто скопированные 2 абзаца из статьи в доке. Точно ли он нужен в таком виде?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
идея в том, чтобы в блоге подсвечивать какие-то крупные обновления в документации. если оставить только новый раздел, то его можно просто не заметить. но если это будет в виде статьи, то там сразу видно, что появилось что-то новое (идея была именно в том, чтобы подсветить новую статью)
5f042a1
to
568a627
Compare
568a627
to
21e2b62
Compare
21e2b62
to
9926379
Compare
9926379
to
1427430
Compare
В testplane реализовано визуальное тестирование, с помощью которого пользователь может проверить визуальные изменения отдельного компонента, вьюпорта или всей страницы целиком. | ||
Для анализа тестов, сохранения/обновления измененных изображений и запуска тестов рекомендуется использовать плагин [html-reporter][html-reporter], который предоставляет удобный UI для всех действий. | ||
|
||
![Html-report](/img/docs/html-reporter/html-reporter.overview.png) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Тут скриншот немного странный получился у него внизу дофига белого и потом полоса желтая. В итоге выглядит как будто это полоса разделитель какой-то.
|
||
Для скринштных проверок Testplane предоставляет команду `assertView`, которая позволяет сделать скриншот конкретного элемента или всего вьюпорта. | ||
При вызове команды `assertView` осуществляется поиск нужного элемента на странице с его автоматическим ожиданием. По умолчанию перед снятием скриншота на странице будет отключена анимация, чтобы исключить в будущем нестабильность теста из-за изменяющегося состояния элемента. | ||
После снятия скриншота будет произведено сравнение полученного изображения с эталонным. Если эталонного изображения еще не существует, то его необходимо сохранить с помощью UI html-reporter или CLI-опции `--update-refs`. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Может тут на UI html-reporter
тоже ссылку сделать? Я бы на месте юзера сразу хотел бы посмотреть как там снять их можно.
|
||
# Скриншотное тестирование со Storybook | ||
|
||
[Storybook][storybook] — это инструмент для разработки пользовательских интерфейсов на основе компонентов. Он позволяет разработчикам независимо визуализировать компоненты в различных состояниях в изолированной от остальных компонентов среде. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Может вместо "визуализировать" заюзать "рендерить"?
Такой "шоурум" идеально подходит для скриншотного тестирования ваших компонентов, т.к. за счет этой изолированной среды такие тесты получаются в разы стабильнее и быстрее, чем вариант с e2e. | ||
|
||
С помощью плагина [@testplane/storybook][testplane-storybook] предоставляется возможность автоматически проверять изменения ваших компонентов с помощью скриншотного тестирования. | ||
Вам достаточно описать ваш компонент в `Storybook`, а `testplane` при запуске автоматически сгенерит все необходимые тесты, прогонит их в нужных браузерах и предоставит визуальный отчет для обновления скриншотов. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
А зачем storybook и testplane в кавычках? Это же просто название инструмента. Я бы написал без кавычек и с большой буквы.
В Вашем проекте уже могут быть настроены другие типы тестирования, запускающиеся с помощью `testplane`. Чтобы не смешивать сущности, мы рекомендуем для storybook-тестов использовать отдельный конфиг и указывать его при запуске тестов. | ||
|
||
```bash | ||
npx testplane --storybook --config .testplane.storybook.conf.ts |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Можно было бы сразу в новом формате написать - testplane.storybook.config.ts
[storybook]: https://storybook.js.org | ||
[testplane-storybook]: https://github.com/gemini-testing/testplane-storybook | ||
[play-function]: https://storybook.js.org/docs/writing-stories/play-function | ||
[example]: https://github.com/gemini-testing/testplane/examples/storybook-autoscreenshots |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
У тебя тут ссылка некорректная. Должно быть так - https://github.com/gemini-testing/testplane/tree/master/examples/storybook-autoscreenshots
No description provided.