Как я могу захватить или обеспечить покрытие REST API из модульных тестов Java?

Приняв охват кода как концепцию и доведя наш код до более чем 70% покрытия строк, руководство теперь заинтересовано в покрытии REST API.

В настоящее время мы экспериментируем с определением наших ресурсов REST JAX-RS с помощью RAML и генерации кода для построения моделей и интерфейсов JAX-RS. Очевидно, что RAML может определять набор ресурсов, которые должны быть доступны с помощью каких методов, указывает, какие типы MIME могут быть приняты и созданы, и какие коды состояния являются приемлемыми ответами на любой заданный вызов.

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

Не уверен, что лучше свести это к числу и отслеживать по пороговому значению / с течением времени; или просто регистрировать сбой модульного теста при неполном покрытии. Мы рады рассмотреть любое решение на данный момент!


person Rob Oxspring    schedule 16.05.2016    source источник


Ответы (1)


Я не знаю конкретного инструмента, который мог бы это сделать. Если ничего не доступно, я предлагаю просто измерить покрытие кода сгенерированного кода. Вероятно, было бы легко найти непроверенные ресурсы, ища классы, реализующие ресурсы с покрытием ниже среднего (даже если в хорошо протестированном сгенерированном классе есть непокрытый код).

Я сомневаюсь, что с помощью этого подхода вы могли бы достичь «покрытия кода состояния» для каждого ресурса, поскольку любая разумная реализация API будет реализовывать некоторые статусы ошибок в общем виде в одном месте, но, опять же, возможно, вам это действительно не нужно, если вы ' re охватывает весь сгенерированный код.

person Dave Schweisguth    schedule 16.05.2016