TestMace
0.0.1-beta.24
0.0.1-beta.24
  • Быстрый старт
  • Облачная синхронизация
  • Интерфейс
    • Меню
    • Обзор интерфейса
    • Черновики
    • Типы узлов
    • Горячие клавиши
  • Типы узлов
    • Project
    • Folder
    • RequestStep
    • Assertion
      • Compare
      • In range
      • One of set
      • Contains
      • XPath
      • JSONPath
      • Script
      • Link
    • Link
    • API description
      • ApiRootFolder
      • ApiFolder
      • ApiRoute
      • Импорт описания API
    • Broken
    • Script
  • Переменные
    • Пользовательские переменные
      • Статически определяемые переменные
      • Динамические переменные
    • Встроенные переменные
    • Переменные окружения
  • Работа с проектом
    • Cookie
    • Авторизация
  • Настройки
    • Proxy
  • Прочие возможности
    • Массовое редактирование таблиц
    • Импорт & Экспорт
      • Shared
      • cURL
      • Swagger
      • Postman
    • HTTP-заголовки по умолчанию
  • CLI
    • Инструмент командной строки
Powered by GitBook
On this page
  • Установка TestMace
  • Обзор интерфейса
  • Ваш первый GET запрос
  • POST запрос и Assertion
  • Динамические переменные
  • PUT запрос
  • Проверка изменений
  • DELETE запрос
  • Проверка DELETE
  • Заключение
  • Видео инструкция
  • Код для импорта через shared
  • Скачать проект

Was this helpful?

Быстрый старт

Данное руководство позволит вам быстро освоить интерфейс и основные функции TestMace.

NextОблачная синхронизация

Last updated 5 years ago

Was this helpful?

В этом руководстве мы протестируем работу back-end сервера для записей типа post на следующем сценарии:

  • запросим у сервера все имеющиеся записи

  • добавим новую запись

  • проверим корректное добавление записи

  • обновим только что созданную запись и проверим корректность обновления через ответ от сервера

  • запросим обновленную запись от сервера

  • проверим, что на сервере запись действительно обновлена

  • удалим запись

  • проверим, что на сервере запись не существует

Для этого нам потребуется не более 10 минут, после запуска программы.

Установка TestMace

Скачать TestMace можно по ссылкам ниже или с сайта

  • Windows

  • Mac OS

  • Linux

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

Для установки TestMace на Windows запустите инсталлятор с правами администратора.

По завершению установки запустите приложение. Перед вами откроется новый проект.

Обзор интерфейса

Ваш первый GET запрос

Обратите внимание, что все изменения в проекте сохраняются автоматически в режиме реального времени.

Откройте двойным кликом созданный запрос getPosts и выполните его нажав на кнопку "Run".

Мы видим, что запрос выполнен успешно, в Response Area получен список существующих записей. Давайте рассмотрим этот экран подробнее:

Request parameters

Здесь вы можете указать http заголовки, а так же передать параметры запросу с автодополнением и использование переменных.

Request type

  • GET — получение ресурса

  • POST — создание ресурса

  • PUT — обновление ресурса

  • DELETE — удаление ресурса

  • PATCH — для частичного изменения ресурса

  • OPTIONS — для описания параметров соединения с ресурсом

URL

Поле URL поддерживает автодополнение, а так же использование переменных. Мы воспользуемся этими функциями чуть позже.

Make Request

Выполнение запроса или группы запросов при запуске из корня проекта или ноды типа folder

Response area

Зона ответа сервера, вкладка Response Body может быть представлена в виде: Parsed, JSON, text. В соседних вкладках можно посмотреть Response Headers, а так же создать или посмотреть существующие Assertion узлы для запроса.

POST запрос и Assertion

Существует три способа добавления нового узла в проект:

  1. Мы можем создать черновик (Scratch) нажав на + и позже перенести его в проект используя Drag and Drop;

  2. Можно нажать правой кнопкой мыши по узлу родителю и выбрать Add node -> Request step;

  3. Можно нажать на кнопку Add project node-> Add node -> Request step.

Создайте новый узел любым из этих способов и задайте ему имя createPost.

  1. Выберите для этого узла "Request type" значением POST

  2. Во вкладке body выберите тип данных JSON и добавьте {"title": "Testing post", "content": "Sendt via TestMace"}

  3. Выполните запрос нажав на кнопку RUN.

А теперь запустим запрос createPost и интерфейс проинформирует нас об успешном выполнении теста. Это совсем не сложно, посмотрите анимацию ниже:

Динамические переменные

  1. Кликните правой кнопкой мыши по значению Id в Response body ноды CreatePost,

  2. Выберите пункт Assign to variable.

  3. Во всплывающем окне в качестве ноды выберите директорию проекта posts, введите имя переменной: postId и нажмите ОК.

${$dynamicVar.postId}

PUT запрос

На этом этапе мы будем использовать запрос типа PUT. Обратимся к записи созданной на предыдущем шаге при помощи динамической переменной: ${$dynamicVar.postId} и обновим значения записи title и content.

  1. Request type выберите PUT

  2. Body: {"title": "Testing post updated", "content": "Updated via TestMace"}

Проверка изменений

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

Для этого мы создадим GET запрос по URL записи с использованием динамической переменной:

  1. Тип запроса: GET

DELETE запрос

Следующий шаг - удаление созданной нами записи по URL записи с использованием динамической переменной:

  1. Тип запроса: DELETE

Проверка DELETE

Для того, чтобы убедиться, что созданная запись была удалена с сервера, создадим GET запрос по URL записи с использованием динамической переменной, мы ожидаем, что при запросе получим ответ сервера: 404, поэтому создадим соответствующий Assertion узел:

  1. Тип запроса: GET

    1. Actual value: ${$response.code}

    2. Operator: =

    3. Expected value: 404

Заключение

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

Видео инструкция

Посмотрите весь процесс создания сценария описанного в руководстве на видео

Скачать проект

Разархивируйте в директорию проектов TestMace.

Для создания первого запроса создайте новую вкладку нажав на +. При этом в зоне "Scrathes Area" будет создан узел с названием Scratch 1. Вставьте в поле URL адрес: . Можно сразу протестировать ответ сервера из "Scrathes Area" или перенести наш черновик в проект. Для удобства переименуйте этот узел, дав ему название getPosts.

Создайте в проекте узел типа с названием posts и перенесите созданный черновик getPosts из "Scratch Area" в "Project Area".

Давайте теперь добавим новую запись типа post на сервер, для этого нам нужно создать новый узел.

В поле URL вставьте

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

В зоне "Response Area" в формате Parsed нажмите правой кнопкой мыши по значению title, которое мы передавали в запросе, выберите Create Assertion -> Compare -> Equal. После этого узел будет создан и открыт, нам дополнительной настройки не требуется, поэтому закроем его. Аналогично создадим Assertion узел для значения Content.

Для того, чтобы мы могли взаимодействовать с созданной нами записью на сервере, нужно передавать в последующие значение её Id. Создадим динамическую переменную postId и присвоим ей значение Id возвращаемое в записи после выполнения CreatePost.

Для того чтобы обратиться к переменной используйте $dynamicVar:

Создайте узел c именем updatePost

URL:

Выполним запрос и аналогично шагу POST запрос, создадим два узла для сравнения отправленных и полученных значений title и content.

Создайте новый узел с именем getPost

URL:

Выполните запрос и создайте 2 узла для сравнения данных title и content.

Создайте узел типа с именем deletePost

URL:

Создайте узел типа с именем checkIfNodeExists

URL:

Выполните запрос и в зоне Response Area выберите пункт Assertions и добавьте новый узел, нажав ADD. Внесите данные узла:

Код для импорта через

https://client.testmace.com
https://client.testmace.com/download/?os=windows
https://client.testmace.com/download/?os=mac
https://client.testmace.com/download/?os=linux
https://testmace-stage.herokuapp.com/posts
Folder
RequestStep
https://testmace-stage.herokuapp.com/posts
Assertion
Assertion
Request step
встроенную переменную
RequestStep
https://testmace-stage.herokuapp.com/posts/${$dynamicVar.postId}
Assertion
RequestStep
https://testmace-stage.herokuapp.com/posts/${$dynamicVar.postId}
Assertion
RequestStep
https://testmace-stage.herokuapp.com/posts/${$dynamicVar.postId}
RequestStep
https://testmace-stage.herokuapp.com/posts/${$dynamicVar.postId}
Assertion
shared
8KB
getting_started_shareCode.txt
Быстрый старт Share код
7KB
TestMace_быстрый_старт.zip
archive
Быстрый старт
Создание шаблона GET запроса
Создание Folder узла и перенос шаблона GET запроса
Запуск GET запроса
POST запрос и создание Assertion
Создание динамической переменной
Создание PUT запроса
Проверка изменений через GET запрос
DELETE запрос
Запуск сценария