Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

307
Visualizações
Las pruebas de integración con WireMock fallan porque no se encuentran procesadores ALPN

Estoy escribiendo algunas pruebas de integración para una aplicación Spring Boot escrita en Kotlin. Para bloquear algunas solicitudes HTTP, estoy usando WireMock a través spring-cloud-contract-wiremock como dependencia.

Algunos códigos de muestra anónimos de una prueba de integración:

 @SpringBootTest @AutoConfigureMockMvc @AutoConfigureWireMock class MyIntegrationTest { @Test fun `some test`() { mockEndpoint("url", 500, someResponseBodyInJson) mockMvc.perform( MockMvcRequestBuilders .post("url") .contentType(MediaType.APPLICATION_JSON.toString()) .content(someRequestBodyInJson) ) .andExpect(MockMvcResultMatchers.status().isInternalServerError) } private fun mockEndpoint(url: String, responseCode: Int, responseBody: String) { stubFor( WireMock.post(url).willReturn( WireMock.aResponse() .withStatus(responseCode) .withHeader(HttpHeaders.CONTENT_TYPE, MediaType.APPLICATION_JSON.toString()) .withBody(responseBody) ) ) } }

Mientras ejecuto estas pruebas en mi máquina local, todo funciona bien. Sin embargo, en el entorno de CI/CD está fallando con el siguiente error:

 java.lang.IllegalStateException: No Server ALPNProcessors! at wiremock.org.eclipse.jetty.alpn.server.ALPNServerConnectionFactory.<init>(ALPNServerConnectionFactory.java:52)

Investigué un poco y descubrí que tiene que ver con Jetty que se pierde algunas cosas en la ruta de clases. Agregué la siguiente dependencia testImplementation("org.eclipse.jetty:jetty-alpn-server:11.0.7") , pero las pruebas siguen fallando. La extensión alpn-boot no debería ser necesaria ya que se está utilizando JDK 11.

Alguien que me pueda ayudar a solucionar esto? ¿Necesito otra dependencia o estoy mirando en la dirección equivocada?

over 4 years ago · Santiago Trujillo
2 Respostas
Responde à pergunta

0

Degradar a Jetty 9.4.x

Wiremock no es compatible con Jetty 10 o Jetty 11.

Además, Spring no es compatible con Jetty 11 (que usa Jakarta EE 9 y Servlet 5.0 en el nuevo espacio de nombres jakarta.servlet )

over 4 years ago · Santiago Trujillo Relatório

0

El equipo de Wiremock abordó esto en la versión 2.32, hay un ticket aquí . Debe especificar una versión correcta para wiremock-jre8-standalone para anular una versión anterior extraída por Spring:

 # Gradle testImplementation 'com.github.tomakehurst:wiremock-jre8-standalone:2.32.0' #Maven <dependency> <groupId>com.github.tomakehurst</groupId> <artifactId>wiremock-jre8-standalone</artifactId> <version>2.32.0</version> <scope>test</scope> </dependency>
over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda