Библиотека тестировщика | QA, тестирование, quality assurance, manual testing, autotesting, ручное тестирование, автотесты
8.77K subscribers
1.22K photos
153 videos
23 files
2.57K links
Все самое полезное для тестировщика в одном канале.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/12538d6f

Работать у нас: https://job.proglib.io/

Для обратной связи: @proglibrary_feeedback_bot
Download Telegram
🧑‍🎓🧑‍🎓 Продолжаем «Вопросы-ответы для собеса».

Методы http REST
GET используется для получения / чтения ресурса. Не стоит использовать GET для небезопасных операций над данными, при данном запросе они не должны быть модифицированы.

PUT обычно используется для обновления ресурса. Тело запроса при отправке PUT-запроса к существующему ресурсу URI должно содержать обновленные данные оригинального ресурса.

PATCH запрос используется для модификации ресурса — запрос должен содержать только изменяемые данные ресурса, а не все его данные. Это напоминает работу PUT, но в теле запроса содержится набор инструкций описывающих как должен быть изменён ресурс, расположенный на сервере, для формирования новой версии.

POST запрос наиболее часто используется для создания новых ресурсов. На практике он используется для создания вложенных ресурсов. Другими словами, при создании нового ресурса, POST запрос отправляется к родительскому ресурсу и, таким образом, сервис берет на себя ответственность на установление связи создаваемого ресурса с родительским ресурсом, назначение новому ресурсу ID и т.п.

DELETE используется для удаления ресурса, идентифицированного конкретным URI (ID).

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

8 техник тест-дизайна:
1. Эквивалентное разделение. Мы берем все возможные варианты ввода текста и разделяем их на валидные и невалидные.
2. Граничные значения. В этой технике мы работаем только с цифрами.
3. Таблица принятия решений. Нужно нарисовать таблицу, в которой мы будем использовать разные условия и ситуации.
4. Парное тестирование. Для техники «Парное тестирование» нужно открыть любой интернет-магазин и каталог товаров.
5. Диаграмма перехода состояний.
6. Диаграмма пользовательских ролей.
7. Угадывание ошибок. В этой технике нужны опытные ребята, которые могут придумать и вспомнить ситуации, в которых ПО «ломается».
8. Исследовательское тестирование. Применяется когда мы не знаем продукт, когда нам не нужна или у нас нет документации, когда нет времени

Принципы тестирования ПО

1. Тестирование демонстрирует наличие дефектов, а не их отсутствие
2. Исчерпывающее тестирование недостижимо
3. Раннее тестирование сохраняет время и деньги
4. Кластеризация дефектов
5. Парадокс пестицида
6. Тестирование зависит от контекста
7. Заблуждение об отсутствии ошибок

#обучалка
🎉1714👍10
Error, Defect, Fault, Bug и Failure — в чем разница

🐞 Bug — это если где-то в коде допущена ошибка, она провоцирует «поломку» кода, и приложение работает некорректно.

💇 Defect — это ситуация, при которой приложение не работает соответственно требованиям, то есть отличается ожидаемое и действительное поведение продукта.

🛑 Error — это ситуация, которая происходит когда разработчики неправильно понимают требования к продукту, и это приводит к багам.

😱 Fault случается когда приложение не может, например, из-за недостатка свободной памяти или места на диске.

💥 Failure. Сочетание дефектов, которые приводят к полному отказу приложения, обычно с потерей данных, в том числе критически важных.

Подробный разбор вас ждет здесь

#обучалка
🤩23👍94😁2🤔1
BugsBusters - митап для QA- специалистов, который пройдет онлайн 28 сентября, в 19:00.

Программа

Ложка дёгтя в транзакционном режиме пуллинга.
С чем столкнулись, когда переключили режим пула pgBouncer с сессионного на транзакционный. Как исследовали и как решали проблемы.

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

Как понять, что тестов достаточно.
Как в отделе следят за покрытием тестами и как дорабатывается собственный сервис сбора статистики.

#мероприятие
👍62
🏃‍♀️🏃‍♀️🐍 Тестирование Python с помощью pytest: простое, быстрое, эффективное и масштабируемое
2-е издание (2022)
Автор: Brian Okken

Тестируйте большие и маленькие приложения, пакеты и библиотеки с помощью pytest - самой мощной среды тестирования Python. pytest поможет вам быстро писать тесты и поддерживать их читабельность и работоспособность. В этом полностью переработанном издании вы познакомитесь с суперспособностями pytest - простыми утверждениями, фиксаторами, параметризацией, маркерами и плагинами - в процессе создания простых тестов и наборов тестов для небольшого приложения базы данных. Используя надежную, но простую модель фикстур, с помощью pytest легко писать как небольшие тесты, так и сложные функциональные тесты. Эта книга покажет вам, как это сделать.

#книга

Она вас ждет здесь
👍53
🤔 Очередной #дайджест по QA

Мобильный тестировщик за 6 часов — 14 видеоуроков для начала, то, что нужно💪

Книги для тестировщика на русском языке — список для расширения знаний, улучшения навыков и поднятия профессионального уровня

Дефицит в IT закончился? Или нет? Что происходит на рынке труда? — раньше вакансий было много, а активных соискателей мало. Сейчас вакансий становится меньше, а тех, кто ищет работу — больше... 🤔

Selenium + Python Live Coding — пишем маленькую, но полезную библиотеку для работы с типовыми операциями WebElement

Нам надо серьезно поговорить про UX — разбор отношений между UI и UX, причем тут технологии и как это все происходит
20🔥20🤩17🥰11👍10
This media is not supported in your browser
VIEW IN TELEGRAM
Инженер разработчик Геннадий, обосновывает топам почему они должны поднять ему ЗП со следующего месяца.
🔥153👍2
🧑‍🎓🧑‍🎓 Продолжаем «Вопросы-ответы для собеса»

Как происходит запрос
1. Пользователь вводит в браузере адрес сайта
2. Браузер начинает искать сервер
3. Браузер отправляет запрос к DNS-серверам
4. Браузер устанавливает соединение с сервером
5. Браузер отправляет HTTP-запрос, чтобы получить контент сайта
6. Сервер обрабатывает запрос
7. Сервер отправляет ответ браузеру
8. Браузер обрабатывает полученный ответ и «рисует» веб-страницу

Коды запроса
🟢 Информационные 100 - 199
🟢 Успешные 200 - 299
🟢 Перенаправления 300 - 399
🟢 Клиентские ошибки 400 - 499
🟢 Серверные ошибки 500 - 599

Аутентификация и авторизация (разница)
✍️ Аутентификация — процедура проверки подлинности, например проверка подлинности пользователя путем сравнения введенного им пароля с паролем, сохраненным в базе данных.
✍️ Авторизация — предоставление определенному лицу или группе лиц прав на выполнение определенных действий.

#обучалка
18🥱2
Находитесь в поиске нормальной вакансии?
Вы уже подумали за вас и у нас есть канал вам в помощь.
Сохраняйте, чтобы не потерять
4
🏃📲 Мобильное тестирование: быстрый #гайд

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

Хорошей практикой является определение стратегии тестирования, она поможет «разбить» процесс тестирования на этапы и выполнить всё качественно, без пропуска нужных этапов.

Запуск QA-процесса

Тестирование должно проводиться на всех этапах жизненного цикла разработки программного обеспечения, а не только когда функция полностью готова.

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

Тест-план

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

Важный кейс — проверка успешности установки приложения через PlayStore/App Store.
Далее необходимо проверить, корректно ли открывается/запускается приложение после успешной установки.

Для углубленного изучения, переходим сюда
11🔥2
Вот вам крутая книга для тестировщиков/разработчиков на JavaScript/Angular.

Testing Angular Applications

Целевая аудитория: опытные разработчики на JavaScript/Angular.

Тестирование приложений — один из самых ответственных и сложных этапов в процессе разработки коммерческих приложений. Настоящее руководство для начала познакомит вас с TypeScript, некоторыми важными основами Angular, методами тестирования и популярными библиотеками и фреймворками для написания тестов. Дальше вы научитесь самостоятельно тестировать отдельные компоненты, сервисы и маршруты Angular-приложений.

В книге рассматриваются следующие темы:
✔️ основы TypeScript;
✔️ базовые основы тестирования;
✔️ пишем первый тест;
✔️ тестирование компонентов, директив, сервисов и маршрутов;
✔️ e2e тестирование и многое другое.

Преимущества:
актуальный материал по теме;
небольшой объём;
множество качественных примеров кода.
3👍2🥰1
#задача

Необходимо написать функцию is_even (и тесты), которая принимает на вход целое число и возвращает True, если число четное, и False, если число нечетное.

Функция для проверки четности числа
def is_even(number):
return number % 2 == 0

Проверка для четного числа
assert is_even(4) is True

Проверка для нечетного числа
assert is_even(7) is False

Проверка для нуля
assert is_even(0) is True

Проверка для отрицательного четного числа
assert is_even(-10) is True

Проверка для отрицательного нечетного числа
assert is_even(-15) is False
👍81🔥1
🤔 #дайджест полезных репозиториев для тестировщиков

✴️ Big List of Naughty Strings — когда кончилась фантазия, руки ничего не соображают, а оттестировать поле для ввода нужно 😉

✴️ Awesome Testing — ресурсы для новичков: книги, софт, курсы, каналы и прочее

✴️ Free Learning Resources For Software Testers — бесплатные обучающие онлайн-ресурсы для начинающих и опытных QA

✴️ How They Test — best practices, инструменты, техника и культура тестирования ПО в разных известных компаниях

✴️ Testing checklists — еще один чек-лист для мобильного тестирования
🔥24👍1611👏10🥰9
🤔🙅 Вроде успеваем, или как не продолбать релиз

Как тестировщику понять, что релиз успешный? Тут всё просто — надо сравнить ожидаемый и фактический результаты. Чтобы эти результаты были максимально приближены друг к другу, в первую очередь понадобится проработать треугольник успеха, а именно ответить на вопросы: Что? Где? Когда?

Как ответить на вопрос «Что?»

🔹 Определить зоны ответственности
🔹 Составить четкий flow для работы над релизом
🔹 Выделить ресурсы на подготовку
🔹 Донести команде, что происходит после вывода релиза в продуктовую среду
🔹 Поработать с приоритетами

Как ответить на вопрос «Где?»

🔹 Понять, где разрабатываем и где тестируем (приёмка, регресс, нагрузка)
🔹 Определить, какие инструменты используем
🔹 Научить команду работе с инструментами
🔹 Не молчать, но и не ныть

Как ответить на вопрос «Когда?»

🔹 Не забывать про релизный календарь
🔹 Понять, в какой момент начинается твоя работа
🔹 Начать работать с первого дня релизного цикла

Читать статью

#гайд
🔥91👍1
Forwarded from Библиотека программиста | программирование, кодинг, разработка
🎮 Идеальный подарок геймеру: Xbox vs PlayStation vs Nintendo Switch vs Steam Deck

В продолжение темы предыдущего опроса рассмотрим самые популярные платформы на рынке – Xbox, PlayStation, Nintendo Switch и Steam Deck – и поможем вам определиться с выбором.

🔗Читать статью
🔗Зеркало
Please open Telegram to view this post
VIEW IN TELEGRAM
5👍2