Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 春云';t在测试期间从JSON文件中选择转换器_Java_Spring_Spring Cloud_Spock_Wiremock - Fatal编程技术网

Java 春云';t在测试期间从JSON文件中选择转换器

Java 春云';t在测试期间从JSON文件中选择转换器,java,spring,spring-cloud,spock,wiremock,Java,Spring,Spring Cloud,Spock,Wiremock,在下面的设置中,spring不会选择JSON文件中定义的转换器,该文件位于mappings目录下,但当我在测试代码中直接声明它时,它会选择 @配置 公共类配置{ @豆子 WireMockConfigurationCustomizer选项Customizer(){ 返回新的WireMockConfigurationCustomizer(){ @凌驾 public void自定义(wiremock配置选项){ 选项.扩展(BodyDefinitionTransformer.class); } };

在下面的设置中,spring不会选择JSON文件中定义的转换器,该文件位于
mappings
目录下,但当我在测试代码中直接声明它时,它会选择

@配置
公共类配置{
@豆子
WireMockConfigurationCustomizer选项Customizer(){
返回新的WireMockConfigurationCustomizer(){
@凌驾
public void自定义(wiremock配置选项){
选项.扩展(BodyDefinitionTransformer.class);
}
};
}
}
公共类BodyDefinitionTransformer扩展响应定义Transformer{
@凌驾
公共响应定义转换(请求请求、响应定义、响应定义、文件源文件、,
参数(参数){
return responseDefinition;//通过在此处放置断点来检查此操作是否有效
}
@凌驾
公共布尔applyGlobally(){
返回false;
}
@凌驾
公共字符串getName(){
返回“车身变压器”;
}
}
当我使用
.withTransformers(“body transformer”)
声明它时,代码可以完美地工作,但是当我将transformer名称放入JSON文件中的
transformers
数组时,它就不工作了。你知道为什么吗

{
  "request": {
    "method": "POST",
    "urlPattern": "/some/thing"
  },
  "response": {
    "status": 200,
    "bodyFileName": "my_payload.json",
    "transformers": [
      "body-transformer"
    ],
    "headers": {
      "Content-Type": "application/json"
    }
  }
}
@ContextConfiguration
@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
@TestPropertySource
@AutoConfigureWireMock(port = 9632)
class DummyTestClass extends Specification {

 def "some dummy test" () {
    when:
    stubFor(post("/some/thing").willReturn(aResponse()
        //.withTransformers("body-transformer") transformer work if I declare it in this way
        .withTransformerParameter("test", "test"
        )))

// rest of my test where execute above request
}
}