Я пытаюсь использовать {throw new Exception ()} в Spock, но при запуске теста он печатает в отчете -
"Возникли следующие проблемы:
Ожидаемое исключение типа 'java.lang.Exception', но исключение не выдано "
package testing
import spock.lang.Specification
class MyFirstSpec extends Specification {
def "Test_One" (){
given:
def obj = new SpockMethodsPlaceholder()
obj.returnAge(0) >> {throw new Exception("invalidAge")}
when:
1*obj.returnAge(0)
then:
Exception ex = thrown()
ex.getMessage() == "invalidAge"
}
class SpockMethodsPlaceholder {
def "returnAge" (int age){
return age
}
}
}
Что-то не так с моим кодом?
Ниже приведена трассировка стека тестового прогона ---
Рабочий каталог:
Главная страница пользователя Gradle: /home/mafia/.gradle
Распределение Gradle: Обертка Gradle из целевой сборки
Версия Gradle: 4.3
Домашняя страница Java: / usr / lib / jvm / java-8-oracle
Аргументы JVM: нет
Программные аргументы: нет
Сканирование сборки включено: false
Автономный режим включен: ложь
Тесты: тестирование. MyFirstSpec
: compileJava UP-TO-DATE
: compileGroovy NO-SOURCE
: processResources NO-SOURCE
: классы до даты
: compileTestJava
: compileTestGroovy
: processTestResources NO-SOURCE
: testClasses
: Тест
testing.MyFirstSpec> Test_One FAILED
org.spockframework.runtime.WrongExceptionThrownError at MyFirstSpec.groovy: 16
1 тест завершен, 1 не пройден
Были неудачные тесты. См. Отчет по адресу: file: ///media/mafia/A08200E98200C62E/Study/Git_Repo/GIT_JAVA/workbench/SpockProject/build/reports/tests/test/index.html
СТРОИТЬ УСПЕШНОЕ в 19-е
4 действенных задания: 3 выполненных, 1 актуальных