Наши любимые приложения-помощники в тестировании back-end

Всем привет! Меня зовут Константин и я работаю ведущим тестировщиком в дружной команде back-end компании Solit. Мои коллеги уже не раз делились различными хитростями и ноу-хау, которые они применяют в своих проектах. Я же решил пойти немного другим путём и поделиться с вами набором сервисов и утилит, которые помогают нам прийти к недостижимой цели — работа приложений без дефектов.

В мою подборку попали те приложения, которые прижились в нашей команде и ими пользуется более одного человека. Конечно, есть очевидные вещи, типа Notepad++. Но есть и более редкие «звери», типа JWT.

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

Приложения для генерации данных

Правильная подготовка тестовых данных — уже половина успешного тестирования. В этом разделе я собрал приложения, которые помогают быстро сгенерировать большие (я бы даже сказал, очень БОЛЬШИЕ) объёмы тестовых данных.

pgCodeKeeper

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

В нашем случае она прижилась именно как генератор тестовых данных для БД Postgres. Подробнее о том, как он работает, можно прочитать в официальной справке pgCodeKeeper.

5ade012387564bc243d4c13191c13e3a.png

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

bd1cfbb9fb1e95cf78183da0af18f9b6.png

Попробовать

Spawner Data Generator

Конечно, в проектах могут использоваться не только Postgres БД, но и MySQL 5.x. В этом случае на помощь приходит аналог приложения выше.

bb2a76ba60495080879e18b5d9ae683f.png

Разобраться в нём значительно проще, чем в pgCodeKeeper. Ведь Spawner только и умеет, что генерировать данные. Несмотря на то что приложение уже давно не развивается, данные генерируются без каких-либо проблем.

Попробовать

Приложения и сервисы для сверки и поиска данных

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

WinMerge

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

d5ced59492cc145b1343929432112d47.png

Попробовать

Поисковики пути

Следующие сервисы я решил не разделять, ведь по сути они делают одно и то же. Вот их список:

1.  Xpather.com

2.  JSONPath Online Evaluator

3.  JSON Path Finder

Все они помогают легко найти Xpath или JSONPath в приложенных данных. Это помогает упростить составление путей вручную, а результат мы можем использовать в SoapUI и других инструментах для валидации данных по определённому пути.

d2a874d973f66ed8f499a944bf3139b9.png

PLANETCALC

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

7e094dda0a8340ab21be5acaa878c69b.png

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

Попробовать

JWT (JSON Web Tokens)

6629e79e9ed8024ae2f8de0914d135f4.png

Полезный веб-сервис, который позволяет декодировать, проверять и генерировать JWT. От вас требуется вставить токен, выбрать алгоритм и получить расшифрованный результат.

Попробовать

Делаем код красивым

И снова я собрал здесь сразу несколько сервисов:

1.  JSON Viewer

2.  XML Viewer

Часто с полей или от других команд тестирования результат работы сервисов приходит в минимизированном формате. Дебажить такой код неудобно, и сервисы выше могут навести красоту в один клик.

22a9b565b3eafa899880f36d4dc7fece.png

Что-то типа для разработки

Хороший тестировщик — ещё немного разработчик. Поэтому без инструментов разработки или около того нам не обойтись.

VS Code

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

d951f11cf562734a6c626390e9d14fca.png

У нас она используется для написания кода, автотестов и дебага каких-то непонятных ошибок.

Попробовать

IntelliJ IDEA

Это интегрированная среда разработки программного обеспечения для многих языков программирования, в частности Java, JavaScript, Python, разработанная компанией JetBrains.

b674a73cbf532692112b65062850cdbc.png

В нашем случае — аналог утилиты выше. Используем для дебага Groovy скриптов (автотестов).

Попробовать

GitHub Desktop

Если есть код, его надо где-то хранить и управлять им. Мы его используем для загрузки и выгрузки автотестов.

a1f6592987169ac2c2d0c2ffe00bb7d6.png

Попробовать

Notepad++

Ни одна из подобных статей не может обойтись без крутого блокнота Notepad++ с подсветкой синтаксиса, разметки, а также языков описания аппаратуры VHDL и Verilog. Мы используем различные плагины для приведения формата кода в читаемый человеком вид, поиска по запросам, ответам xml и json.

ee2409b7745dcbc3f7dfe25cc6957aff.png

Попробовать

Софт для заметок

Тоже вполне стандартные участники подобных топов. У нас в компании прижились Notion, Microsoft OneNote и Evernote. Как говорится, кому что нравится.

adebd797acfff25fe48a6bd7dad2d253.png

Мы эти приложения используем в качестве личных баз знаний по проектам и в целом работе. Конечно, в Solit Clouds используется Wiki, в рамках которой также происходит обмен и хранение данных. Но для часто используемой мелочёвки заметочники — всё ещё топ.

Делалки скриншотов

Хороший багрепорт должен содержать скриншот, который отражает проблему. Конечно, можно просто нажать Print Screen. А можно пойти дальше и установить одну из программ ниже:

1.  Monosnap

2.  Screenpic

3.  Greenshot

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

55ac681753993b3b74615fbc9c91f719.png

Прочие полезности

Для утилит и сервисов ниже у меня не нашлось категории, но это никак не отменяет их пользу.

Багред

f495cbd57e247e5c882debce5df75a53.png4a27af009e09e22261c8900e3cf724c3.png

Новичкам часто бывает сложно сформулировать название задачи для баг-трекера. Да и опытным тестировщикам не всегда бывает просто. Багред поможет сделать это за вас.

Попробовать

JPG в PDF

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

Попробовать

HTTP Archive Viewer

Если вы знаете, что такое .har файлы, то наверняка знаете и про HTTP Archive Viewer. Если же нет, то этот сервис помогает просматривать такие файлы в удобоваримом виде.

9bed66a1ab41c76de979d92db678744b.png

Попробовать

Postman Answers

8bfc22f4275f90d643fe84126fa02f0a.png

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

Попробовать

А какими приложениями и сервисами пользуется ваша команда? Давайте поделимся в комментариях.

Автор: Докучаев Константин

© Habrahabr.ru