Дайджест материалов по тестированию cо 2 по 8 декабря

Этот дайджест создан совместно с телеграм-каналом QA Live | тестирование ПО. Подпишитесь, чтобы получать дайджесты прямо в телеграм!

Почитать:

Архитектура Appium

Чтобы полностью использовать все возможности Appium, необходимо понимать, как он работает под капотом.



Проверка комплаенса в Google Checks

В паблик вышла ИИ-платформа проверки комплаенса от Google. Она проверяет, что приложение делает, и что делать не должно.



Expert Testing Advice: 10 Industry Leaders Share Their Top Tips

«За последние 10 лет я взяла интервью у многих экспертов по тестированию программного обеспечения. В этой статье я приведу 10 самых ярких советов, которыми поделились эти эксперты.»



Верблюд, змея, шашлык и Блез Паскаль — форматы имен в коде.

Cases: Camel, Kebab, Pascal, Snake


«Сейчас работодатели все больше и больше смотрят в сторону работников из таких стран как Индия, Непал, Бангладеш, Северная Корея, Кения. Люди с этих территорий могут быть интересны для строительных, сельскохозяйственных, сервисных и логистических компаний. Соискатели из Индии претендуют как на неквалифицированные, так и на более продвинутые вакансии. Речь идет о таких позициях, как инженеры, врачи, юристы. Особым спросом пользуются специалисты по IT-технологиям».

Indian IT workers in Russia


На других платформах:

Самое крутое в QAOps — это возможность видеть результат работы сразу. Ты не ждёшь, пока вся разработка завершится, чтобы начать тестирование, а участвуешь, что называется, – «уже». Это позволяет исправлять баги «на ходу» {или иногда «на лету»}, а не за неделю {день/час} до релиза.



Примечание: я знаю, что для большинства из вас это не новость, но в реальности в мире множество тестировщиков, не следующих пяти “I” великого тестирования.



Тестируемые задачи в финтехе зачастую не предполагают базовых проверок на уровне «запускается, не выдает ошибок, не использует много памяти». Вместо этого необходимо будет использовать разветвленную логику: как-то у меня была задача с новым алгоритмом экспирации опционов, на которую я составила более 30 сценариев. При этом такие задачи иногда не включают в себя нефункциональные требования и QA должен их составить сам. Соответственно, необходимо владеть как навыками QA-инженера, так и знаниями предметной области.

Основные направления для изучения:

  • предметная область,
  • SQL,
  • написание автотестов.


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



В процессе тестирования программного продукта в зависимости от поставленных задач мне довольно часто приходится использовать Postman — популярный инструмент, который позволяет создавать и тестировать API. Для целей тестирования Postman позволяет создавать коллекции запросов к API, в том числе и для разных окружений, настраивать Mock-серверы для имитации работы эндпоинтов, писать простые автотесты на JavaScript, анализировать результаты выполнения запросов. В некоторых кейсах приходится создавать тест-раны для каскадной проверки работы вызова API и корректности возвращаемых ответов.



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



Автотесты, как известно, работа пыльная и ресурсозатратная. А уж если речь идет об интеграционных, то тем более: сначала осуществляешь сборку теста, затем добавляешь его в нужную среду, а потом еще тот самый деплой, подготовка которого может занимать критически много времени… Но будучи SDET-ом, то есть совмещая в себе навыки разработчика, тестировщика и DevOps, я постигаю архитектуру тестов и иногда нахожу интересные решения по ее оптимизации.



Иногда вы будете упираться в стены: лог, за которым вы следовали не вывел вас к ошибке или сильнее запутал. В такой ситуации я, обычно, делаю пару «шагов назад» или начинаю с самого начала.



С микросервисами сложностей только прибавилось. Теперь у нас не просто приложение, а целый «зоопарк» независимых сервисов, которые постоянно меняются. Чтобы каждый релиз прошел гладко, нужно не только следить за актуальностью всех сервисов, но и адаптировать тесты к любым обновлениям на лету.

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

Для проверки системы целиком используют E2E-тесты. Однако в условиях частых релизов их поддержка становится затратной и малоэффективной. А низкоуровневые тесты не дают полной картины.



Это BPM‑конструктор, с которым может работать даже человек без глубокого бэграунда разработчика, используя интерфейс и набор готовых инструментов. Платформа сочетает в себе два подхода:

  • No‑Code — веб‑редактор артефактов и BPMN‑процессов,
  • Low‑Code — для создания микросервисов, которые будут содержать и сконфигурированные в редакторе артефакты, и необходимую дополнительную логику.

С точки зрения тестирования это выглядит довольно увлекательно. Представьте, что вас посадили в Lego city, где все сделано из совместимых и универсальных деталей. Но вот появляется новый сценарий: нужно создать Lego Хогвартс, где лестницы движутся. Для этого изобретают новую универсальную деталь. Теперь ваша задача — убедиться, что эта деталь работает не только в Хогвартсе, но и, например, превращает лестницы в эскалаторы в обычных зданиях, не разрушая их. Так возникают два совершенно разных мира с уникальной функциональностью, построенные из одних и тех же элементов, которые должны адаптироваться к любым условиям.



Для целей этой статьи, вместо создания собственного API, я буду использовать reqres. Это общедоступный REST API, предоставляющий различные конечные точки. Чтобы ознакомиться с доступными конечными точками, смотрите спецификацию Swagger для API здесь.



О чем пойдет речь?

  • Что такое базовая авторизация и способы использования внутри Postman
  • Задача, которую я преследовал и зачем понадобилась автоматизация (Pre-Request Script)
  • Простые примеры скрипта с Basic Authorization в Pre-Request Script
  • Строим дерево вариантов поведения скрипта
  • Итоговый скрипт, заключение


JavaScript и Node.js имеют множество библиотек тестирования и утверждений, таких как JestJasmineQunit и Mocha. В этой статье мы рассмотрим, как использовать Mocha для тестирования, Chai для утверждений (ассертов) и Sinon для моков (mocks), шпионов (spies) и заглушек (stubs).



Множество QA специалистов, а также специалисты по нагрузочному тестированию, используют jmeter в своей работе из-за его достаточно большой гибкости. Пакет всем хорош, но в своей базовой поставке он ничего не знает про российские алгоритмы шифрования. На самом деле тема с попыткой подключения российской криптографии к jmeter возникла после того, как мои коллеги попытались нагрузить и протестировать связку нового API, закрытого ГОСТовым mTLS, использующим пучок сертификатов выданных различными УЦ. Коллеги начали пилить свои приложения на Java, придумывать варианты с использованием stunnel с поддержкой российской криптографии, что в принципе имело определённый результат, но не имело гибкости в настройках. Поэтому были решено произвести исследования о возможности нативно использовать криптографию КриптоПро в jmeter.



В большом мире QA (англоязычное):

Flaky tests are ubiquitous in teams with automated integration and end-to-end tests, where developers suffer in silence. They’re the biggest challenge to CI stability and a developer pain we’re looking to solve. Even the best teams like GoogleMetaSpotify, and Uber waste countless developer hours due to flaky tests, and wasted engineering hours are expensive.

It’s easy to dismiss flaky tests as a “skill issue” and blame bad test code. But the deeper we dug into test flakiness, the more it looked like a dark, confusing rabbit hole. With our closed-beta partners, we analyzed test results uploaded from 20.2 million CI jobs. We learned that addressing flaky tests in practice requires nuance, you can’t just fix all of them because it’s impractical. You also can’t ignore them because they poison your trust in your test results and slow you down.



“Writing clean code is what you must do in order to call yourself a professional. There is no reasonable excuse for doing anything less than your best.” Clean Code



It can be tedious to update baseline images as a part of your visual regression suite, so I’ve created a pipeline to automatically generate them and open a pull request for you.



Here’s a interesting theoretical concept: the longer something has been around, the longer it’s likely to stick around. This is meant for things that have no natural end of life. If a tool has survived for 20 years, it’s probably solving some real problems pretty well. That staying power means something.



“I only do solitary unit testing nowadays for libraries and UI components,” Maccherone said. “Though keep in mind, Martin Fowler introduced the idea of ‘sociable unit testing’ a while back, but I fail to see the difference between that and integration testing.”



In this guide, we learn how to write effective JUnit test cases that can make your code more reliable and easier to maintain.



Let’s talk about the ripple that Anthropic’s “Computer Use” feature is making—one that could turn into a full-on tidal wave in the test automation world. Imagine this: you tell a program to “go to Google and download 10 images,” and voilà, it takes the reins, operating your browser, clicking through search results, and saving those images, all without a single click from you. This isn’t just auto-mation; it’s auto-magic. And for those of us who’ve built careers around test automation tools (like me), it’s a bit like watching a plot twist where the supporting character suddenly takes center stage.



This blog will show you how to run automated end-to-end Playwright tests for your React app with Headless Chrome on Heroku.



There are quite a few AI solutions on the market, mostly are paid or require a subscription. I wanted to explore some open-source solutions — I stumbled across Midscene on GitHub and decided to trial it out. Auto-Playwright is also fairly popular and I’ll most likely explore that in the future as a comparison.



Посмотреть:

В докладе проходим игру под названием «7 смертных грехов тестирования». Стараемся помочь доброму корги по кличке Мок, пожелавшему овладеть искусством Playwright, пройти все проказни Бажка — хитрого кошачьего предвестника хаоса.


Welcome to the first tutorial on the advanced Playwright TypeScript tutorial series, and learn how to install it.


Релоканты.


Playwright’s new ARIA Snapshot testing makes it easier to test structure and content of your site. In this video, Simon demonstrates it and gives you an overview of how to use it.



⬅️ Предыдущий QA-дайджест

Хорошей недели!

Какой была ваша первая зарплата в QA и как вы искали первую работу?

Мега обсуждение в нашем телеграм-канале о поиске первой работы. Обмен опытом и мнения.

Подписаться
Уведомить о
guest

0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии

Мы в Telegram

Наш официальный канал
Полезные материалы и тесты
Готовимся к собеседованию
Project- и Product-менеджмент

? Популярное

? Telegram-обсуждения

Наши подписчики обсуждают, как искали первую работу в QA. Некоторые ищут ее прямо сейчас.
Наши подписчики рассказывают о том, как не бояться задавать тупые вопросы и чувствовать себя уверенно в новой команде.
Обсуждаем, куда лучше податься - в менеджмент или по технической ветке?
Говорим о конфликтных ситуациях в команде и о том, как их избежать
$1100*
медианная зарплата в QA в июне 2023

*по результатам опроса QA-инженеров в нашем телеграм-канале

Собеседование

19%*
IT-специалистов переехало или приняло решение о переезде из России по состоянию на конец марта 2022

*по результатам опроса в нашем телеграм-канале

live

Обсуждают сейчас