test
-
@Before @After в тестах
-
Behave тестирование с Spock
Еще один интересный инструмент для тестирования.
https://github.com/spockframework/spock
https://github.com/cherepakhin/spock_testПример теста:
class ShoppingCartTest extends Specification { def "verify multiple properties of a ShoppingCart"() { given: ShoppingCart cart = new ShoppingCart() cart.addItem("Apple", 3) cart.addItem("Banana", 2) expect: with(cart) { totalItems == 5 totalPrice == 10.00 items.size() == 2 items.contains(new ShoppingItem("Apple",3)) items.contains(new ShoppingItem("Banana",2)) } }
(GROOVY!!!)
Проведение теста:$ ./mvnw test [INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0
-
Mockito
1. Mockito.mock() (ЭТО МЕТОД)
Метод Mockito.mock() позволяет нам создать фиктивный объект класса или интерфейса. -
Иерархия тестов в Allure Report
Интеграционное тестирование Rest подойдет для интеграционных, behave тестов https://v.perm.ru/main/index.php/34-behave-testirovanie.
Проект с демонстрацией тестирования https://github.com/cherepakhin/hamcrest-demo. Иерархия такая: @Epic -> @Feature -> @Story -> @Step. -
Интеграционное тестирование с JUnit
Предупреждение: я знаю, что JUnit для UNIT тестов и цена им небольшая. Речь о применении JUnit в ИНТЕГРАЦИОННЫХ тестах. И с другой стороны, на тех проектах, где мне приходилось работать, интеграционное тестирование проводилось вручную. Можно это дело автоматизировать.
-
Простой проект на Kotlin и Spring Boot
Оглавление:
Статический анализатор Idea Analize
Статический анализатор SonarCube
JPA Entity классы с KotlinUnit тестирование
Интеграционное тестирование в проекте
Покрытие тестами
Spring profiles
Тестовый запускСоздание запускаемого файла и его запуск
Publishing SpringBoot "FAT" jarИнтеграционное тестирование
Примеры тестов httpie
DataJpa tests
RestAssured tests
Нагрузочное тестированиеPrometheus
Пример просмотра использования CPU в Prometheus
Запуск prometheus в dockerDocker
Grafana
Кеширование
Сборка Jenkins
NexusПросмотр ресурсов с помощью Java Mission Control
ЛогированиеИспользование "ChatGPT-EasyCode" в Idea
Использование "ChatGPT-EasyCode" в VSCodeЧастный параметр конфигурации в application.yaml
Переопределение значения переменных application.yaml -
Сеанс нагрузочного тестирования с yandex_tank
Показаны настройки теста с помощью Docker.
-
Тестирование REST
В заметке описаны инструменты тестирования REST и примеры использования.
А чем, собственно, проблема?
-
Тестирование с TestNG
TestNG - еще одна система тестирвания. Можно использовать для интеграционных тестов. https://www.baeldung.com/testng Пример с DataProvider: