интеграционные тесты спока не находят данные H2 - PullRequest
0 голосов
/ 04 марта 2019

У меня есть приложение с начальной загрузкой 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.Но когда я доберусь до

...