Comments 7
0
Не ради холивара…
Мне однажды показали Spock Framework, с тех пор с не могу без боли смотреть на JUnit.
0
В чём его преимущества (2-3 пункта по возможности)?
0
Может это, конечно, субъективно, но основные:
- создание Mock-ов просто и наглядно,
- assert-ы средствами языка
- (edited) числа сразу BigDecimal, особенно актуально в финансах, где почти все данные — различные суммы.
Несколько примеров (без контекста) :
def "should get person by id"() {
given:
def repository = Mock(PersonRepository) {
findById("100") >> Optional.of(new Person(id: "100"))
findById("200") >> Optional.empty()
}
when: "existing person"
def bean = service.getPersonById("100")
then:
bean.id == "100"
when: "not existing person"
service.getPersonById("200")
then:
thrown NotFoundException
}
def "should find all by order id"() {
when:
def list = repository.findAllByOrderId(orderId)
then:
list.size() == size
list.collect { it.id } == ids
list.any { it.totalAmount == 123.45 }
where:
orderId | size | ids
"ord-A" | 2 | ["100", "300"]
"ord-B" | 1 | ["200"]
"ord-C" | 0 | []
}
0
Sign up to leave a comment.
Тестирование с помощью JUnit 5 на Kotlin