Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
Achitheus authored Feb 13, 2024
1 parent 93b8d09 commit 6909937
Showing 1 changed file with 22 additions and 12 deletions.
34 changes: 22 additions & 12 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
## Автоматизация тест-кейса Яндекс Маркета
Автоматизация тест-кейса на связке Maven, Selenium, JUnit5, Allure. Документация на русском языке - согласно требованиям.
## Содержание
- [Build](#build)
- [Запуск тестов](#запуск)
Expand Down Expand Up @@ -30,20 +32,27 @@
allure serve
## Allure отчет

#### Запуск тестов и деплой отчета джобой (GitHub Actions)
При запуске в CI обходить капчи моими методами труднее, поэтому результат оставляет желать лучшего.
### Запуск тестов и деплой отчета джобой (GitHub Actions)
При запуске в CI бороться с капчами сложнее, поэтому результат оставляет желать лучшего.
Тем не менее посмотреть отчет можно по
<ins>[этой ссылке](https://achitheus.github.io/SelenideTestCase/1)</ins>,
причем относительный интерес в нем, по понятным причинам, представляет собой только
<ins>[этот удачливый тест](https://achitheus.github.io/SelenideTestCase/1/#behaviors/f8b8261c1ab4fe7e959d48ef5aa7a754/645c56ffa9ef53d1/)</ins>.
<ins>[этот удачливый тест](https://achitheus.github.io/SelenideTestCase/1/#behaviors/f8b8261c1ab4fe7e959d48ef5aa7a754/645c56ffa9ef53d1/)</ins>:

---
![gif-ci](https://github.com/Achitheus/SelenideTestCase/blob/markdown-resources/selenide-CI-report.gif)

---
Как ни странно, могло быть и хуже (подробнее см. в заметке <ins>[Удаленное противо-captcha-стояние](https://github.com/Achitheus/automationCucumber/blob/main/NOTES.md#удаленное-противо-captcha-стояние)<ins>).

*Поэтому более
целесообразным представляется выполнить...*
### Запуск локально и деплой отчета руками
Здесь руки не так связаны, поэтому <ins>[результат](https://achitheus.github.io/SelenideTestCase/local-run/)</ins>
соответствующий:

---
![gif-local](https://github.com/Achitheus/SelenideTestCase/blob/markdown-resources/selenide-local-report.gif)

#### Запуск локально и деплой отчета руками
Здесь уже руки не связаны, поэтому <ins>[результат](https://achitheus.github.io/SelenideTestCase/local-run/)</ins>
соответствующий.
---
## Требования
### Тест кейс
1. Открыть браузер и развернуть на весь экран.
Expand Down Expand Up @@ -90,21 +99,22 @@ Java, Junit Jupiter, Selenide, PageObject по стилю Selenide
- На каждой странице пагинации по товарам можно выполнять сколько угодно проверок, если
добавить их в ~~`marketCheckAllPages()`~~. "Падение" какой-либо из проверок не прерывает тест
(использованы soft asserts).
**Update.** Эта ужасная функция удалена. Вместо нее использован `PageableChecker` (моя маленькая гордость).
**Update.** Эта ужасная функция удалена. Вместо нее использован `PageableChecker`, который пора бы уже вынести в отдельный подпроект и отдельно протестировать.
- Даже если среди проверок не осталось "не упавших", тест не прерывается. Проверяются все чеки на всех страницах.
**Update.** Чтобы использовать дефолтный "lazy" режим, достаточно убрать из теста
`.checkAllPages(true)`. В таком случае страницы проверяются пока остается хотя бы один незафейленный чек.
`.beLazy(false)`. В таком случае страницы проверяются пока остается хотя бы один незафейленный чек.
При этом зафейленные чеки на последующих страницах не проверяются.
- При наличии на странице нескольких товаров некорректных с точки зрения конкретного чека,
отчет ~~не говорит сколько этих товаров, не выводит их список, а сообщает о первом попавшемся~~.
**Update.** Теперь и количество сообщает. Кроме того если "плохих" элементов больше одного, помимо скриншота и веб-страницы в аттачментах появляется файл,
в котором перечислены они все.
в котором перечислены они все.
**Update2.** Все элементы-причины фейла всегда указываются в логах ошибки.
- ~~К сожалению упавшие софт-ассерты плохо отображаются в отчете: галочки/стрелочки не
меняют цвет с зеленого на красный. Пришлось тернарным оператором передавать разные
сообщения для успешного и неуспешного выполнения таких ассертов (для последнего случая
что-то бросающееся в глаза типа “`<<< FAIL >>> Имя товара не соотв…`”).~~
**Update.** Allure действительно официально не поддерживает `soft asserts`, но благодаря классу `AllureLifeCycle`
в `PageableChecker` с этим справиться удалось.
в `PageableChecker` с этим справиться удалось.



Expand Down

0 comments on commit 6909937

Please sign in to comment.