Тестируем OData в eCATT – 2

Привет.

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

Наша задача – протестировать OData сервис, чтобы любое изменения в его работе тут же показывалось в тестах. Это позволит нам заранее видеть как то или иное изменение скажется на всей системе, особенно, если у нас десятки и сотни тестов, а не 1-2.

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

Итак, мы должны убедиться, что сервис выдает только нужные нам данные и в нужном формате. Если что-то меняется, то тесты должны это показать, а мы увидеть и принять решение – это изменились требования к сервису или ошибка разработки. Если перевести на русский язык, то тест должен запустить сервис как будто это настоящее приложение, получить данные и сверить их с эталонными. Если сверка прошла, то тест пройден. В противном случае – ошибка.

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

Читать далее


Реализация ABAP Unit test

И не говорите мне, что я зануда.

Дело было так. Я когда-то уже вещал вам про TDD методологию, а сегодня решил на практике попробовать как оно работает в SAP. Сделал простой OData сервис, его и решил протестировать автоматизированно.

А теперь я хочу его автоматизированно тестировать. Ранее я рассказывал про sECATT. Сегодня поговорим про Unit тестирование. Это такая штука, которая программируется на языке программирования ABAP и позволяет проверять логику работы _внутри_ программы. То есть, она не имитирует работу пользователя, а проверяет внутренние процедуры, методы, функции на ожидаемый результат. Например, всегда должно сохранять данные с корректным форматом, никогда нельзя сохранять данные с некорректным форматом. Делаем для этого два метода – тест на положительный результат и тест на отрицательный результат.

Читать далее