Хобрук: Ваш путь к мастерству в программировании

Spring Boot не может запустить один тест в IntelliJ

Это начало происходить недавно, но я не уверен, что изменилось, чтобы вызвать это.

  • Когда я запускаю все тесты из IntelliJ, все хорошо. Также сборка Gradle в порядке.
  • Когда я запускаю один модульный тест, все хорошо.
  • Когда я запускаю один тест веб-интеграции, он терпит неудачу, потому что класс конфигурации имеет все нулевые свойства.

Класс конфигурации выглядит так (Kotlin):

@Component
@ConfigurationProperties(prefix = "api")
public open class ApiConfigImpl : ApiConfig
{ 

Тест выглядит так:

@RunWith(SpringJUnit4ClassRunner::class)
@ContextConfiguration(classes = arrayOf(ApplicationAssembly::class), loader = SpringApplicationContextLoader::class)
@WebIntegrationTest
open class CandidateProfileControllerTest
{

    @Inject lateinit var profileRepo: CandidateProfileRepository
    //etc a few more deps used to setup test data

    @Test
    open fun getById()
    {
        val greg = CandidateProfile("123", "12312", "Greg", "Jones",   dateOfBirth = Date(), gender = Gender.MALE,
            biography = "ABC", maxMatchableAge = null,   maxMatchableDistance = null)
        profileRepo.save(greg)

        val auth = given().header("content-type", "application/json")
            .body(testCredentials)
            .post("/authorization/social").peek().asString()
        val accessToken: String = from(auth).get("accessToken")

        given().header("Access-Token", accessToken).
            header("API-Key", testAPIKey()).
            get("/profile/${greg.id}").
            peek().then().
            body("stageName", notNullValue())
    }

Я не уверен, какую информацию я могу добавить. На основании предоставленной ограниченной информации:

  • Это известная проблема с известным решением?

  • Покажите нам один тест веб-интеграции, пожалуйста. 03.02.2016
  • ну вот @miensol, спасибо 04.02.2016
  • к счастью, похоже, что он работает на IntelliJ 16 (EAP), что хорошо для повторного использования после решения этой проблемы: /404201 04.02.2016
  • Я подозреваю, что проблема, с которой вы можете столкнуться, вызвана различиями в том, как плагин gradle spring boot и идея обращаются с ресурсами. Вы можете убедиться в этом, проверив, не проходит ли единственный тест, который теперь дает сбой, после того, как Rebuild Project вызывается внутри Idea. 04.02.2016
  • @miensol Это, безусловно, звучит правдоподобно. Я не мог сказать вам с абсолютной уверенностью, потому что я вернулся к IntelliJ 15 (я использовал 16 EAP), чтобы проверить ваше предложение, и это перестало происходить. 04.02.2016

Ответы:


1

Это ошибка, зарегистрированная в трекере IntelliJ/Kotlin, ожидающая исправления.

02.08.2016
Новые материалы

Введение в контекст React
В этом посте мы поговорим о Context API, который был представлен в React 16, и о том, как вы можете их использовать. Что такое контекст? Глядя на определение из react docs , оно..

Шлюз с лицензией OSS, совместимый с Apollo Federation v2, появится в WunderGraph
Сегодня мы рады сообщить, что мы сотрудничаем с поддерживаемой YC Tailor Technologies, Inc. для внедрения Apollo Federation v2. Реализация будет лицензирована MIT (Engine) и Apache 2.0..

Это оно
Ну, я официально уволился с работы! На этой неделе я буду лихорадочно выполнять последние требования Думающего , чтобы я мог сосредоточиться на поиске работы. Что именно это значит?..

7 полезных библиотек JavaScript, которые вы должны использовать в своем следующем проекте
Усильте свою разработку JavaScript Есть поговорка «Не нужно изобретать велосипед». Библиотеки — лучший тому пример. Это поможет вам написать сложные и трудоемкие функции простым способом...

Базовое руководство по переносу концепций обучения в глубокое обучение
Обзор По мере того, как машинное обучение становится все более мощным и продвинутым, модели, обеспечивающие эту расширенную возможность, становятся все больше и начинают требовать огромного..

C в C.R.U.D с использованием React-Redux
Если вы использовали React, возможно, вы знакомы с головной болью, связанной с обратным потоком данных. Передача состояния реквизитам от родительских компонентов к дочерним компонентам может..

5 обязательных элементов современного инструмента конвейера данных
В цифровом мире предприятия используют конвейеры данных для перемещения, преобразования и хранения огромных объемов данных. Эти конвейеры составляют основу бизнес-аналитики и играют..