У меня есть приложение с начальной загрузкой 2.0.1, которое использует spock для тестирования интеграции.У меня есть это:
testCompile 'org.spockframework:spock-core:1.1-groovy-2.4'
testCompile 'org.spockframework:spock-spring:1.1-groovy-2.4'
Моя базовая спецификация:
@ContextConfiguration(loader = SpringBootContextLoader)
@SpringBootTest(classes = MyApplication.class, webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
class BaseSpecification extends Specification {
@LocalServerPort
int port;
def setup() {
RestAssured.port = port;
}
}
И мой тест
@Transactional
class OfficeControllerTest extends BaseSpecification {
def setup() {
def office = new Office(name: "test)
def hardware = new Hardware(hardwareId: validHardwareId, activationDate: LocalDate.now(), office: office);
assert(hardwareRepository.save(hardware))
List<Hardware> hardwareList = hardwareRepository.findAll();
assert(hardwareList.size() > 0)
}
when:
def response = get("/office/{id}", id)
then:
response.then().log().all()
.statusCode(status)
where:
id | status | api_key
validHardwareId | 200 | validApi
...}
Мой тест не пройден, потому что вызываемая служба не возвращает никакихаппаратное обеспечение, которое было сохранено в настройке ().У меня включено ведение журнала трассировки, но в консоли нет ошибок, поэтому кажется, что я вставляю запись в H2.Но когда я доберусь до