
Состоялся второй мажорный релиз проекта Meta Test. Это российская платформа для создания и запуска автотестов веб‑приложений без навыков программирования.
Meta Test — это российская программная платформа для создания и запуска автоматизированных тестов веб‑приложений людьми без навыков программирования. В основе платформы лежит концепция языково‑ориентированного программирования. Для описания тестов используется декларативный предметно‑ориентированный язык, что позволяет избавится от создания тестового «фреймворка» и сложных для понимания концепций вроде Page Object Model. Но тем не менее поддерживается исполнение в тестах обычного кода на языке python, что позволяет гибко работать с источниками тестовых данных, отправлять API запросы и даже создавать новые команды для встроенного языка.
Платформа Meta Test предоставляет:
встроенный язык для описания тестовых сценариев со средой выполнения;
систему эффективного многопоточного запуска тестов;
встроенные автоматические ожидания;
систему триггеров;
механизм автоматической загрузки драйверов и браузеров;
средства интеграции с инструментами построения отчётов;
систему расширений.
Проект Meta Test предназначен для использования на многоядерных процессорах с архитектурой x86-64. Для запуска рекомендуется использовать операционную систему Debian Linux 12, но тем не менее платформа работает и на других современных дистрибутивах. Также возможна работа и на операционных системах Windows 11 и iMac 15.
Основные изменения в проекте Meta Test 2.0:
расширения для поддержки браузеров chromium, edge и safari были перенесены из дистрибутива в репозиторий для расширений;
улучшена система отчётов. Доработан отчёт для allure;
в механизм расширений была добавлена поддержка команд;
изменено поведение большинства команд, некоторые команды были переименованы;
добавлены команды для поддержки js‑alerts;
доработан раннер тестов. Добавлена поддержка статистики, что позволяет автоматически ранжировать тесты по времени запуска и запускать только упавшие тесты;
добавлена начальная поддержка HTTP запросов. С их помощью можно напрямую обращаться к веб‑серверу, минуя взаимодействия с браузером.
Этот механизм в первую очередь предназначен для дополнения браузерного тестирования, а не для создания самостоятельных api‑тестов. Например, тест, приведённый ниже, переходит на url http://the‑internet.herokuapp.com/download и получает все ссылки, находящиеся в контейнере с классом example. Затем для каждой ссылки выполняется HEAD запрос, код статуса которого должен быть равным 200.
from metatest import * TEST["Проверка доступности ссылок для скачивание файлов"]( URL("http://the-internet.herokuapp.com/download") , "Проверяем доступность всех URL файлов" , HEAD[ALL(".example > a", "attr::href")]( STATUS == STATUS.OK , timeout=25 ))


