es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Tag: WIREMOCK

WireMock. Cómo escribir JSONPath correctamente para un arreglo. En WireMock, JSONPath se utiliza para seleccionar y extraer datos de un arreglo en un objeto JSON. Aquí hay algunas pautas para escribir JSONPath de manera adecuada para un arreglo: 1. Para acceder a un elemento específico en el arreglo, utiliza el índice entre corchetes. Por ejemplo, “$.arreglo[0]” seleccionará el primer elemento del arreglo. 2. Para seleccionar varios elementos, utiliza el operador de rango “:”. Por ejemplo, “$.arreglo[0:2]” seleccionará los primeros dos elementos del arreglo. 3. Si deseas seleccionar el último elemento del arreglo, utiliza el índice “-1”. Por ejemplo, “$.arreglo[-1]” seleccionará el último elemento. 4. Si necesitas seleccionar todos los elementos del arreglo, utiliza el comodín “*”. Por ejemplo, “$.arreglo[*]” seleccionará todos los elementos del arreglo. 5. También es posible utilizar condiciones para seleccionar elementos específicos en el arreglo. Por ejemplo, “$.arreglo[?(@.propiedad == ‘valor’)]” seleccionará todos los elementos del arreglo que cumplan con la condición de tener una propiedad con un valor específico. Recuerda que los nombres de las propiedades y los valores en JSONPath son sensibles a mayúsculas y minúsculas. Asegúrate de utilizar una sintaxis correcta y revisar la documentación de WireMock para más información sobre cómo escribir JSONPath para arrays. ¡Espero que esta guía te sea útil en la escritura de JSONPath para arreglos en WireMock!

Tengo una solicitud con un cuerpo como se muestra a continuación: “RequestBody”: { “numbers”: [“20030013”, “10010701”, “10006402”] } Y estoy tratando de atrapar la solicitud anterior con Wiremock de la siguiente manera: { “request”: { “urlPattern”: “<my_url_com>”, “method”: “POST”, “bodyPatterns”: [ { “matchesJsonPath”: “$.RequestBody[?(@.numbers == [‘10010701’])]” } ] }, “response”: . . . Read more

Wiremock no simula la solicitud del Webclient.

Estoy usando spring boot 2.5.7, java 8 y junit 5. El archivo de prueba de integración: @SpringBootTest(classes = MyTestApplication.class, webEnvironment = WebEnvironment.RANDOM_PORT) @AutoConfigureWireMock(port = 0) @DirtiesContext public class MyTestControllerTest { @LocalServerPort private int port; @Autowired private TestRestTemplate restTemplate; @BeforeEach void init() { stubFor(post(urlPathEqualTo(“http://localhost:8443/my-third-party-endpoint”)) .willReturn(aResponse() .withStatus(200) .withHeader(“Content-Type”, MediaType.APPLICATION_JSON.toString()) .withHeader(“Accept”, MediaType.APPLICATION_JSON.toString()) .withBody(“{}”))); . . . Read more

Wiremock – No se puede resolver el método ‘willReturn’ en ‘Object’

Estoy probando ejemplos de stubbing en mi proyecto y tengo un error: Cannot resolve method 'willReturn' in 'Object'. Este es uno de los ejemplos: @Test public void exactUrlOnly() { stubFor(get(urlEqualTo("/some/thing")) .willReturn(aResponse() .withHeader("Content-Type", "text/plain") .withBody("¡Hola mundo!"))); } Si compilo el proyecto, tendré este error: java: cannot find symbol symbol: method willReturn(com.github.tomakehurst.wiremock.http.ResponseDefinition) . . . Read more