Есть задача протестировать REST API (ну тут все просто, вопросов нет). Инструменты python и py.test. Вопросы следующие, может кто сталкивался и решал подобное:
Есть описание всех API в RAML и хочется на основе этого описания валидировать текущие шаблоны вызова API. Т.е. перед вызовом получили из RAML текущее описание схемы, сравнили с тем что есть, если не совпадает – тест не прошел, даже не стартуем.
Какие есть плюсы у Rester / pyresttest / siesta перед написанием своего велосипеда (учитывая что он уже есть)? Кто пользовался, какие полезные фичи отметили? Вдруг подумал, почему бы не посмотреть в сторону каких-то готовых решений.
Rester я быстро глянул, там тесты на JSON, есть свой язык внутренний для сравнение результатов. Для меня не айс. Проще на питоне. Остальные два чем могу похвастаться?
Я сейчас собираюсь просто делать внутри своего API класса, вызов какого-нибудь верификатора, который перед загрузкой шаблона, получит последнее актуальное описание и сравнит с тем что сохранено. Но может это велосипед и есть какие-то более правильные решения?
Спасибо! Посмотрю. У меня просто уже есть свой валидатор, который поддерживает правила, правда я его для другой задачи пилил и надо будет доработать напильником, а этот выглядит неплохо.
Но в целом я про подход спрашивал. Кто как делает. Т.е. моя основная задача зафейлить тест, даже не запуская, если схема изменилась.
Т.е. видимо фикстуру свою написать, которая и будет валидировать входные данные ввиде описания API.