Вот я всегда любил строить из игрушек огромные миры, но никогда не играл в них. Ещё я любил их разбирать, меня всегда интересовало что там внутри. Потом я вырос и моей игрушкой стал комп, но поскольку играть я не люблю, то почти сразу я начал грезить программированием. Мне кажется я единственный человек на планете, который обожает делать игры , но не любит в них играть. Или делать сайты, но вообще не пользоватиься соц сетями.
А вы что любите делать, если решили стать тестировщиком?
И вам нужно понять истину - нет хороших сфер деятельности. Есть хорошие люди, которые объединяют таких же хороших людей создавая фантастические оазисы в токсичном мире.
Никто, примерно никто, не идёт в тестирование потому, что «мне всегда нравилось …».
Это басня для собеседований (что б повеселить собеседующих).
Идут потому, что «код писать сложно».
Идут потому, что внутри компании тестирование это маршрут ротации толковых ребят из саппорта.
Идут потому, что насмотрелись рекламы «стань тестировщиком и зарабатывай от 100к уже через 21 день».
Ну и потому, что тестирование - самый тупой путь вкатывания в айти, порог вхождения минимален.
А если говорить про автоматизированное тестирование, то для абсолютного большинства задач знания ЯП и разработки там нужны на уровне ниже джуниор кодера.
Порог входа в автоматизатора - потыкал селениум\сайпресс\плэйрайт, умеешь складывать жсоны в HTTP реквест и валидировать жсонсхему.
А, ну, ещё можешь прикрутить аллюр к жюнит\пайтесту.
Всё.
Дык хорошо.
Ну давайте честно, какая в тестах работа с базой?
У тебя нет конкурентности, нет сложных транзакций, нет необходимости следить за дедлоками, даже за производительностью особо следить не нужно.
Налил фикстур на старте пайплайна, сделал селекты по ходу тестов, грохнул, повторил на следующем прогоне.
Действительно серьёзные (что-то сложнее джоинов и деклэйра) ожидания к пониманию работы БД встречаются только у ребят, которые или сами БД/шины данных тестируют, или всякие даталейки.
С моками похожая история, 90% куак моки вообще не трогают, или е2е тесты, или тесты интеграции.
Те, кто трогают - поднимают примитивные заглушки с каким-нибудь mockito, работая с ним на уровне “прочитал quickstart”.
И что одно, что другое очень редко является блокером для входа в профессию.
Знаешь что такое пэйдж обжект и какие бывают ожидания?
Молодец, держи оффер.
1. Если вы в тестах не будете проверять работу с базой, то не сможете гарантировать правильную работу с ней. Я имею в виду банальные инсерты, апдейты и селекты, которые могут при обновлении структур данных перестать работать или начать работать неожиданным образом.
2. Одна из концепций тестирования в изоляции тестов, если вы будете поддерживать данные между прогонами, они могут воздействовать на результаты тестирования.
Все упирается в обьект тестирования. Разные объекты тестирования - разные уровни тестов.
Тестировать инсерты надо юнитами, которые обычно не тестировщики пишут.
Уровнем выше ты взаимодействуешь с интерфейсом - создал сущность, забрал сущность, сверил данные.
Ходить из функциональных тестов напрямую в базу - такое себе решение, хотя есть случаи, когда без этого никак.
По поводу изолированности и не-переиспользования данных вы правы.
Поэтому в описанной мной схеме и есть последовательность «налил фикстуры-> прогнал тесты -> грохнул».
Только вот всё равно, что б налить синтетических данных для тестов особых знаний скуля ненужно.
Вот я всегда любил строить из игрушек огромные миры, но никогда не играл в них. Ещё я любил их разбирать, меня всегда интересовало что там внутри. Потом я вырос и моей игрушкой стал комп, но поскольку играть я не люблю, то почти сразу я начал грезить программированием. Мне кажется я единственный человек на планете, который обожает делать игры , но не любит в них играть. Или делать сайты, но вообще не пользоватиься соц сетями.
А вы что любите делать, если решили стать тестировщиком?
И вам нужно понять истину - нет хороших сфер деятельности. Есть хорошие люди, которые объединяют таких же хороших людей создавая фантастические оазисы в токсичном мире.
Никто, примерно никто, не идёт в тестирование потому, что «мне всегда нравилось …».
Это басня для собеседований (что б повеселить собеседующих).
Идут потому, что «код писать сложно».
Идут потому, что внутри компании тестирование это маршрут ротации толковых ребят из саппорта.
Идут потому, что насмотрелись рекламы «стань тестировщиком и зарабатывай от 100к уже через 21 день».
Ну и потому, что тестирование - самый тупой путь вкатывания в айти, порог вхождения минимален.
Смотря какое тестирование... Если ручное, то наверно.
А если говорить про автоматические, то там без знаний ЯП, очередей, сервисов делать нечего
А если говорить про автоматизированное тестирование, то для абсолютного большинства задач знания ЯП и разработки там нужны на уровне ниже джуниор кодера.
Порог входа в автоматизатора - потыкал селениум\сайпресс\плэйрайт, умеешь складывать жсоны в HTTP реквест и валидировать жсонсхему.
А, ну, ещё можешь прикрутить аллюр к жюнит\пайтесту.
Всё.
А работа с базой? А всякие моки?
Дык хорошо.
Ну давайте честно, какая в тестах работа с базой?
У тебя нет конкурентности, нет сложных транзакций, нет необходимости следить за дедлоками, даже за производительностью особо следить не нужно.
Налил фикстур на старте пайплайна, сделал селекты по ходу тестов, грохнул, повторил на следующем прогоне.
Действительно серьёзные (что-то сложнее джоинов и деклэйра) ожидания к пониманию работы БД встречаются только у ребят, которые или сами БД/шины данных тестируют, или всякие даталейки.
С моками похожая история, 90% куак моки вообще не трогают, или е2е тесты, или тесты интеграции.
Те, кто трогают - поднимают примитивные заглушки с каким-нибудь mockito, работая с ним на уровне “прочитал quickstart”.
И что одно, что другое очень редко является блокером для входа в профессию.
Знаешь что такое пэйдж обжект и какие бывают ожидания?
Молодец, держи оффер.
1. Если вы в тестах не будете проверять работу с базой, то не сможете гарантировать правильную работу с ней. Я имею в виду банальные инсерты, апдейты и селекты, которые могут при обновлении структур данных перестать работать или начать работать неожиданным образом.
2. Одна из концепций тестирования в изоляции тестов, если вы будете поддерживать данные между прогонами, они могут воздействовать на результаты тестирования.
Все упирается в обьект тестирования. Разные объекты тестирования - разные уровни тестов.
Тестировать инсерты надо юнитами, которые обычно не тестировщики пишут.
Уровнем выше ты взаимодействуешь с интерфейсом - создал сущность, забрал сущность, сверил данные.
Ходить из функциональных тестов напрямую в базу - такое себе решение, хотя есть случаи, когда без этого никак.
По поводу изолированности и не-переиспользования данных вы правы.
Поэтому в описанной мной схеме и есть последовательность «налил фикстуры-> прогнал тесты -> грохнул».
Только вот всё равно, что б налить синтетических данных для тестов особых знаний скуля ненужно.