@qa_ru

Страница 449 из 1080
Oleg
26.04.2017
20:49:44
Ну вот, я и говорю, запускать тесты через итератор

А параллелить как?

Evgeniy
26.04.2017
20:50:12
если упал - всегда можно в teardown логике пополнять список тех которые упали и подставлять запуск этих тестов когда основной пул иссяк

Nikita
26.04.2017
20:50:40
а еще у тебя есть пул юзеров, и тебе нужно чтобы один и тот же юзер не использовался в двух тестах одновременно

Google
Nikita
26.04.2017
20:51:07
про "упал – перезапустить" в питесте есть коробочное решение, это просто (если вдруг кто не знал :))

Oleg
26.04.2017
20:51:18
Иначе они друг друга выкинут :D (серьёзно, где-то ещё осталась такая логика?)))

Evgeniy
26.04.2017
20:52:14
ну никита прав, какую никакую изоляцию нужно в этом случае сделать

Nikita
26.04.2017
20:52:22
Иначе они друг друга выкинут :D (серьёзно, где-то ещё осталась такая логика?)))
например, я готовлю окружение для теста, а другой тест в параллель влезет и перетрет эту подготовку окружением для своего теста

Evgeniy
26.04.2017
20:52:47
это как если б у нас были например 10 админов которые меняли настройки одного дашборда

Nikita
26.04.2017
20:52:52
потому что юзер один и тот же и запрос на бэк с его ключом идет

Oleg
26.04.2017
20:53:06
Это да, может быть треш на бэкенде

Nikita
26.04.2017
20:53:10
еще кстати есть очень простой вариант

можно сделать тупо очередь

Evgeniy
26.04.2017
20:53:23
ладно, идите в пень, полночи, я сегодня чуть не поехал на работе, а вы еще тут решили тереть за оркетсрацию тестов

спокойной

Nikita
26.04.2017
20:53:37
убирать пользователя из пула до начала теста

Google
Nikita
26.04.2017
20:53:46
а в конце теста совать его с другой стороны очереди

добрых снов :)

но и тогда возможна гонка, наверное

Oleg
26.04.2017
20:54:39
Можно да, кстати, но лучше под каждого юзера поток. То есть в параллели по количеству юзеров. Но мне кажется это фигня. Слишком мало параллельно потоков

А в идеале нужно количество потоков = количество тестов :)

Nikita
26.04.2017
20:54:59
ничто не мешает сделать много юзеров :)

Oleg
26.04.2017
20:55:29
Ну тогда ты можешь под каждый тест тупо рагдомного юзера создавать через бекенд и потом удалять :)

Два апи запроса, быстро и просто :) (

А передавать просто роль

Или набор настроек

Nikita
26.04.2017
20:56:26
Ну тогда ты можешь под каждый тест тупо рагдомного юзера создавать через бекенд и потом удалять :)
да, все так) правда я не могу, потому что у меня зависимости от 5 микросервисов и настройках на них – там чтоб сгенерить пользователя и окружение нужно 10-15 запросов

поэтому использую premade чуваков

но для тестов попроще одноразовый пользователь это must have, да

Oleg
26.04.2017
20:57:23
10-15 запросов? Странно, у тебя наносервисы чтоли?)))

Один за ФИО, другой за роли, третий за допустимые страницы

Четвёртый за пароли :((

Nikita
26.04.2017
20:58:05
нет, 1 на генерацию другой на апдейт – а дальше поехали настройки сервисов, от которых зависит мой проект

Mihail
26.04.2017
20:58:12
Раз уж тут такая пьянка зашла - по Robotium ни у кого каких-нибудь гайдлайнов и etc не завалялось?)

Nikita
26.04.2017
20:58:13
ну с 15 я загнул но 10 точно есть

биллинг, проект, несколько видов подпроектов из которых нужны все

Google
Nikita
26.04.2017
20:59:02
10 набирается, да

Oleg
26.04.2017
20:59:05
В любом случае, имхо лучше запариться один раз с написанием человечего класса с геенрацией и очисткой, зато потом мистер гибкость и миллион параллельных потоков

Nikita
26.04.2017
20:59:44
все так, если это нужно :) мне пока что не нужно, чутка другие задачи

Oleg
26.04.2017
20:59:47
Тебе же не через веб интерфейс все это делать :)

Nikita
26.04.2017
21:00:09
(например, перемокать все это добро)

Oleg
26.04.2017
21:01:08
Ну видно это уже моя галочка, чтобы ничего руками не делать, все генерится само и подчищает за собой

Nikita
26.04.2017
21:01:11
ну и я прилично времени тестирую руками, потому частенько надо чтобы работало и надежно) хотя написать звездолет конечно круто

Oleg
26.04.2017
21:01:25
Чтобы я мог на любой неподготовленный свежий енвайромент запустить все тесты

Oleg
26.04.2017
21:02:30
Докер это просто браузер, с либами нужными питончика. Ты же не будешь в Докер засовывать скрипт который будет создавать один раз юзеров?

Тогда можно уж и написать автогенерилку :D

Nikita
26.04.2017
21:02:58
а, я не так тебя понял)

Nikita
26.04.2017
21:03:26
один раз не будешь) а так у меня и тесты и браузер живут в контейнерах, и от окружения не зависят

(если это не винда)

Oleg
26.04.2017
21:04:03
Селеноид юзаншь?

Nikita
26.04.2017
21:04:40
неа

Oleg
26.04.2017
21:04:43
И где хостятся докеры? AWS?

Nikita
26.04.2017
21:05:17
докеры на своих билд-агентах

1 контейнер с браузером влегкую тянет 4 потока тестов (считай 4 окна)

Oleg
26.04.2017
21:06:13
Я кстати считал, если с умом подойти и тщательно контролить, то где-то на 500 параллельных тестов на разворачивать AWS с дженкинсами и селениум гридами выходит всего долларов 700 в месяц

Google
Nikita
26.04.2017
21:06:54
aws прикольный, но в нем нет нужды)

у меня не такие объемы тестов, чтобы была нужда в параллелизации по 500 потоков)

Oleg
26.04.2017
21:07:45
Автоскейл тестов, круто же. Каждый коммит сможешь стартовать тесты

Еще прикрутить репортинг типа reportportal и бомба

Nikita
26.04.2017
21:08:41
продукт не легаси, он быстро меняется, поэтому есть небольшой сьют по функциональной регрессии, а и львиная доля функционала проверяется юнитами

Oleg
26.04.2017
21:09:17
Интеграционки судя по твоей фразе про моканье пока на начальном этапе?

Или ты юниты туда же относишь?

А так ясен пень что не легаси, пока слава богу мало проектов на микросервисах легаси)))

Nikita
26.04.2017
21:10:29
юниты и интеграционные я смешиваю

Admin
ERROR: S client not available

Oleg
26.04.2017
21:10:44
У вас qa пишут их?

Или девелоперы часть а часть qa если видят что недостаточно?

Nikita
26.04.2017
21:11:38
по-разному) есть qa которые пишут юниты, в моей команде разрабы очень хороши в этом плане и пишут юниты как DOD

я ревьюю и накидываю идей

имплементировать юниты не самая моя сильная сторона, хотя если надо – могу)

ну и опять же юниты бывают разные

Oleg
26.04.2017
21:12:39
О, точно, надо у меня тоже внедрить ревью Юнит тестов девелоперов, а то они ревьювают друг друга тесты

Nikita
26.04.2017
21:12:45
есть например места где нужны асинхронные моки и легко мозг сломать

или места где проверяются ивент лупы в ивент лупах)

Oleg
26.04.2017
21:13:21
У тебя бекенд на js?

Google
Nikita
26.04.2017
21:13:26
такое я вряд ли напишу качественно, буду долго с этим возиться. а вот что-то попроще можно)

нет, питон

asyncio :)

Oleg
26.04.2017
21:13:54
Он же встроен уже в питон 3,нет?

Nikita
26.04.2017
21:14:04
да, конечно

Pavel
26.04.2017
21:14:08
Был кстати опыт прикручивания репортпортала с многопоточными тестами? Например на pytest

Еще прикрутить репортинг типа reportportal и бомба

Oleg
26.04.2017
21:14:26
Да, был опыт, нормально заходит последняя версия

Они её асинхронной сделали

Раньше заходила страшно

Nikita
26.04.2017
21:14:53
у меня не было, я считаю что репорты не нужны и в Тимсити нормальный репорт :D

Pavel
26.04.2017
21:16:30
Просто стояла задача, но затык пошел именно из-за многопоточности, времени на разбор не было)

Oleg
26.04.2017
21:16:35
Эта очень полезная тула именно для автоматизаторов, ты видишь какие тесты чаще всего падают, статистику прям. Плюс падения можешь помечать типа баг продукта или надо поправить или например с инетом проблемы. А потом авто анализатор при следующем запуске их сам определит и тебе не придётся пересматривать все падения

Pavel
26.04.2017
21:17:40
Да, по ощущениям реально полезная тулза и если с ее использовать, можно много времени сэкономить на разбор репортаж

Nikita
26.04.2017
21:17:42
еще он умеет в среднее время выполнения теста и сборки и кучу всего

но у меня не так много аналитики – мы больше релизим, чем анализируем)

Oleg
26.04.2017
21:18:58
но у меня не так много аналитики – мы больше релизим, чем анализируем)
Да вообще когда тестов штук 500+ то можно даже человека на полставки на анализ падений тестов)))

Особенно если на каждый коммит запуск тестов

Nikita
26.04.2017
21:19:16
у меня тестов <100 :)

Страница 449 из 1080