Мой первый баг: инструменты и ресурсы для начинающих тестировщиков

zsig42fwvjepntespumx3em2ym8.png


Тестирование — это кропотливый труд. Однако новичкам найти полезные ресурсы бывает сложнее, чем отыскать баг. Решили помочь и попросили коллег-экспертов из Selectel поделиться рекомендациями. Сохраняйте подборку в закладки и делитесь любимчиками в комментариях — превратим статью в хаб полезных материалов!

aaovypgrbb78j15ehmwjuykeohs.gifПриглашаем 10 октября на Selectel Tech Day
Расскажем о новинках на рынке и обновлениях в наших продуктах. Вас ждут доклады, нетворкинг, мастер-классы и вечерняя программа. Участие бесплатное, но нужно зарегистрироваться.


Используйте навигацию, если не хотите читать текст полностью

→ Python-библиотека Requests
→ Искусство тестирования программ
→ Инструмент автотестирования на Python
→ Тренажер CSS diner
→ Rally и Tempest
→ Сети — это база
→ Интересные материалы от экспертов
→ Советы начинающим тестировщикам

Python-библиотека Requests


motksp_uj_kxmkmhomkt9o3x90i.png


Валентина, разработчик в тестировании

Одно из ключевых преимуществ библиотеки — простота. При тестировании бэкенда с помощью Requests можно написать много тестов для проверки API.


С ее помощью удобно работать с HTTP-запросами, тестировать методы POST, GET, PUT, DELETE и сравнивать получаемые ответы. При этом можно проверить возвращаемые сервером данные (response), в том числе код ответа. Это обеспечивает покрытие и негативными, и позитивными сценариями.

Узнать больше о библиотеке →

yhifp12_1qx5tyxxihsglrjlqle.png

Искусство тестирования программ


bjfmjv0uqm44eocwqol3c1qyi-e.png


Артем, инженер по тестированию

Ключевые преимущества — хорошая структура и множество примеров. Для новичков книга поможет сформировать первичную базу знаний. Однако как и в случае с изданием «Компьютерные сети», профи могут периодически обращаться к подобным изданиям как к справочнику.


9a04bed5ef1187d4e2a46c6409585da2.png


Источник.

Труд Гленфорда Майерса содержит описание классических принципов тестирования мобильных и интернет-приложений, проектирования тестов. Помимо прочего, из книги вы узнаете, как применять коллективный подход при разработке и тестировании приложений.

Книга в интернет-магазине →

Инструмент автотестирования на Python


Валентина, разработчик в тестировании

Инструмент Tox позволяет подготовить и настроить среду для тестирования с помощью конфигурационного файла tox.ini. При запуске создает виртуальные окружения (с учетом указанных версий Python), устанавливает зависимости и запускает тесты.


Подробнее об инструменте →

Tox на GitHub →

Тренажер CSS diner


yi_5f7-1_v2qfus8kcwlb5s5kza.png


Александр, старший инженер по тестированию

Полезно перепроходить и новичкам, и профи. Вы научитесь выбирать селекторы в автотестах и избегать длинных конструкций.


qlyngl9ngkyhrw8eka6zddmgugu.png


Скриншот интерфейса инструмента.

Перед пользователем на экране предстает группа HTML-элементов: прыгающих яблок, тарелок и бенто. Чтобы убрать любой из предметов, нужно написать подходящий CSS-селектор.

Опробовать инструмент →

Rally и Tempest


Валентина, разработчик в тестировании

Инструменты, с которыми работаю достаточно давно. В связке они обеспечивают достаточное и актуальное покрытие системы.


Tempest — обширная база тестов на Python для компонентов OpenStack. При этом с каждым релизом последнего тесты актуализируются. Также можно установить дополнительный готовый фреймворк или написать свой, чтобы расширить базу тестов.

С помощью Rally можно запускать эти тесты, создавать окружения для верификации, тестировать производительность и генерировать графические отчеты. Инструмент позволяет запустить полный набор тестов или отдельные наборы.

Узнать, как мы автоматизировали тестирование OpenStack с помощью Rally и Tempest →

Сети — это база


«Компьютерные сети»


Артем, инженер по тестированию

Сети пригодятся во многих сферах IT, тестирование — не исключение. В книге простым языком описываются базовые термины, ключевые сетевые протоколы и технологии. Подойдет для студентов и начинающих специалистов.


40ad4eb34f32755caa0e005ac9c4bde6.png


Источник.

Для состоявшихся специалистов издание может стать подробным справочным материалом, который пригодится в сложной ситуации. Авторы разбирают в книге вопросы сетевой безопасности, беспроводной передачи данных, сетей TCP/IP и не только.

Книга на сайте издательства →

Курс «Как работают сетевые протоколы»


В Академии Selectel есть бесплатный образовательный курс — «Как работают сетевые протоколы». В нем подробно рассматриваем сетевую модель OSI и ряд самых часто используемых протоколов. Всего 12 материалов, на знакомство с которыми уйдет около трех с половиной часов.

Курс будет интересен тем, кто только начинает работать с кластерами, что-то слышал о Kubernetes, но никогда с ним не работал и хочет разобраться в теме. Все статьи и инструкции можно изучать в своем темпе и любом порядке.

imulqwx6nwp_1pb3a3lxjfplqxy.png

Курс в Академии Selectel →

Интересные материалы от экспертов


Как тестировать Kubernetes


Kubernetes — ключевой инструмент для оркестрации контейнеров на рынке, поэтому его тестирование требует особого подхода. Для тривиальных сценариев можно использовать kubectl или Sonobuoy. Однако для сложных интеграционных тестов, которые работают с Kubernetes API, понадобятся кастомные решения. Артем, инженер по тестированию в Selectel, рассказал о настройке таких тестов с помощью Python.

Узнать, как тестировать кластеры Kubernetes→

Как провести юнит-тестирование приложений с БД


Сегодня многие приложения используют трехуровневую архитектуру с БД в слоях данных. Юнит-тесты упрощают поддержку продукта, но когда в архитектуре присутствует база данных, часто приходится искать нестандартные решения.

Разработчик Владимир делится методами и инструментами, которые используют при разработке продуктов Selectel. Автор рассматривает способы тестирования с Python 3, PyTest и SQLAlchemy, но подходы можно адаптировать для других инструментов.

Узнать больше о юнит-тестировании приложений с БД →

Как решить проблему с остаточными ресурсами


Автоматизация тестирования — важная часть работы с облаками, но всегда есть свои нюансы. Одна из проблем — «подвисшие» ресурсы после тестов, которые занимают проектные квоты и влияют на стабильность пайплайна. Валентина, разработчик по тестированию в Selectel, поделилась, как решить эту задачу с помощью инструмента Tempest Cleanup.

Узнать с какими трудностями столкнулись, как их преодолевали и что получилось →

Советы начинающим тестировщикам


Артем, инженер по тестированию

Всегда полезно изучать официальную документацию — так вы лучше поймете продукт и сэкономите время. На старте многие пренебрегают этим. Также мне помогает поддерживать навыки программирования платформа LeetCode, где можно решать задачи по кодированию.


Валентина, разработчик в тестировании

Не бойтесь негативного опыта и отказов — они тоже важны. Порефлексируйте и проанализируйте, что пошло не так, чтобы использовать это как мотивацию для роста. Учение на ошибках поможет вам быстрее развиваться в профессии и становиться более ценным специалистом. Помните, что каждый опыт, даже неудачный, — это шаг вперед!


А какие ресурсы для погружения в тестирование помогли вам? Чем пользуетесь, чтобы практиковать и улучшать навыки? Делитесь в комментариях!

© Habrahabr.ru