Написание "верстконезависимых" тестов. best practices

Думаю в представлении не нуждается.
Предлагаю обсудить стратегию, реализацию, конкретные примеры.
Мне интересно было бы услышать мнения каждого, ибо недавно сам столкнулся с этой бедой и изрядно “горел” когда правил 2-летний код
Начальные условия: Вам пришел новый проект, который на стадии начальной разработки, вы изрядно “потеряли крови” на поддержке проектов, где частенько меняется стиль/верстка. Хватит это терпеть!

Есть только одно решение: разработчики должны сами писать и запускать тесты. Перед их глазами на стенке должен висеть большой телевизор с дженкинсом. Тогда они своевременно будут обновлять тесты при изменениях вёрстки. Заодно и будут использовать удобные локаторы в html, чтобы облегчить свою же жизнь.

2 лайка

Даже нечего добавить, @asolntsev говорит истину, которую 90% компаний не хочет принимать :slight_smile:

1 лайк

можно прописывать всем тестируемым елементам уникальные классы которые нужны только для авто тестов, например .qa-bla-bla-bla, мы часто так делали, очень облегчает жизнь тестеровщику.

есть такая штука сейчас новая модная AppliTools

Зачем добавлять костылей? Тестирование ради тестирование - неоправданная вещь.

Посмотрел я несколько их демок. По факту этот тул полезен только для поиска визуальных отличий самой верстки. Но все равно вам придется также фиксить локаторы, или пинать UI девелоперов, чтобы вернули все назад. Момент с тестированием динамического контента вообще повеселил: предлагается просто игнорировать соответствующие области, либо снизить порог similarity. Дилетантское решение.

Вообще говоря, сложилось впечатление, что они просто взяли и написали красивенький UI над OpenCV библиотекой и вынесли в паблик в качестве платного сервиса.

если било б “Дилетантское” , они б деньги не зарабативали …а они зарабитают и много

Мне без разницы, кто и сколько зарабатывает. Я говорю о реальных фактах, которые они сами же и показывают в своих демках. Назвать игнорирование областей страницы с динамическим контентом - тестированием? Серьезно что-ли?! Это в какой такой вселенной стали тестировать путем игнорирования? А что если у меня весь сайт с динамическим контентом (что не есть новшеством на текущий момент)?

П.С. На IT-школах в Украине тоже прилично зарабатывают с некоторых времен. Но это не значит, что все они предоставляют качественное обучение. А сколько раз в прошлом были случаи, когда корпорациям “впаривали” паршивый софт за нереальные деньги только из-за отлично проведенной PR компании? Так что на любое предложение в наше время найдется покупатель. Главное - преподнести его в правильном месте и с праздничным бантиком.

3 лайка

Я думаю Аи просто не правильно поняли цель данной тулзи… С динамичним контентом и искувственний интелект думаю не разобрался б сейчас нормально… По етому ми и пишем динамические xpath-и и нам на UI грубо говоря плевать…но в целом на их демках они питаються автоматизировать сайти на которих “не очень” то меняеться интерфейс

На ІТ школах зарабативают люди которие их основатели, так как ето такой же бизнес как и любой другой - купи/продай)

Мне вот аплитулс как то сильно помог на одном проекте с биг дата… Били таблици с виборками даних которие менялись и нужно било их вид проверить… Контент бил реально динамичний… Но наши тести мокали данние и ми получали для нескольких тестов дата провайдера всегда одинаковие результати … Ну и их било достаточно много - соответственно скрин для каждого делали

а при чем тут вообще эта тулза, если вы просто мокали данные? зачем вообще этот бессмысленный разговор?

что б не парсить все данние а проверить их визуально