test
- Информация о материале
- Категория: test
- Просмотров: 30
Для unit тестов хватает Mockito (ссылки в конце заметки).
Но, допустим, я хочу провести интеграционный тест своего сервиса, который взаимодействует через REST с другим сервисом.
Подробнее: Эмуляция стороннего сервиса при интеграционном тестировании с WireMock
- Информация о материале
- Категория: test
- Просмотров: 67
Виды тестирования:
1. Unit tests
2. Интеграционное
- REST
- behave-restfull - интересный способ описания тестов с помощью специального языка Gerkin (Behave тестирование с помощью RestAssured проекта shop_kotlin)
- REST tests (RestAssured)
- База данных (DataJpaTest)
- Given-When-Then tests
3. Нагрузочное
Yandex tank test
Еще тесты:
Интеграционное тестирование на Kotlin проекта ktor_shop (https://ktor.io)
- Информация о материале
- Категория: test
- Просмотров: 64
Задача организовать удобное UNIT и интеграционное тестирование.
Пример проекта с gradle https://github.com/cherepakhin/vacancy_backend
Зачем? Интеграционные тесты должны быть отделены от unit тестов, т.к. нет смысла проводить интеграционное тестирование, если unit тесты упали (аксиома, но оказывается, это нужно говорить). Кратко:
В build.gradle.kts (пример) добавить:
- Информация о материале
- Категория: test
- Просмотров: 89
Задача: довести покрытие тестами до 100%. Зачем? А почему бы и нет?
- Информация о материале
- Категория: test
- Просмотров: 116
Еще один интересный инструмент для тестирования.
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