Python мануфактураJavaDesign Patterns для автоматизаторів

Java · Додаткові матеріали · 1:01:08–1:06:48

Динамічні й одноразові assertions

Selenide condition на кшталт `shouldHave(text(...))` очікує потрібний стан протягом певного часу, тоді як `getText()` плюс JUnit assertion читає значення лише один раз. Якщо frontend спочатку показує `0`, а потім `102`, одноразове читання може зробити тест flaky. Перед статичною числовою перевіркою слід хоча б дочекатися видимості або іншої надійної precondition; повторюваний parsing виноситься в один method.

Маленький рефакторинг і тестові дані у Java →

Java · Додаткові матеріали · 1:11:37–1:16:24

Intent-level methods для assertions

Низькорівневі selector, collection і parsing operations виносяться в methods на кшталт `countOfProjectsShouldBeEqualTo`, `countOfTestCasesShouldBeEqualTo` та перевірку total count. Test method після цього показує намір сценарію й очікувані числа, а не деталі DOM. Параметри `expectedSize` або `expectedCount` дають використовувати ті самі перевірки з різними даними.

Маленький рефакторинг і тестові дані у Java →

Java · Advanced: API-автоматизація · 1:20:00–1:40:00

Fluent response assertions і business-readable API

Над `Response` будується small fluent wrapper: status, typed body, field/domain assertions, завершення chain. Це дає тесту domain vocabulary і прибирає repeated parsing. Важливо не сховати expected behavior за великим «validateEverything». Fluent method має виражати одну observable property і давати specific failure.

AssertJ: виразні асерти та їх генерація →

Java · Додаткові матеріали · 1:21:00–1:27:16

Спільні parsers для `int` і `double`

Універсальний `parseIntegerFromString` переноситься до окремого utilities package як `public static` method і підключається static import. Поруч створюється parser для `double`, щоб обробляти UI-значення на кшталт coverage з десятковою частиною. Відео також пояснює різницю між primitive `int` і reference type `Integer`, статичними methods та methods, які повертають значення замість `void`.

Маленький рефакторинг і тестові дані у Java →
Запитати в чаті про «parsing» →