Java 在Spring';s MockMvc大楼

Java 在Spring';s MockMvc大楼,java,spring-mvc,spring-test,asciidoctor,spring-restdocs,Java,Spring Mvc,Spring Test,Asciidoctor,Spring Restdocs,我正在使用SpringMVC和SpringTestSuite(SpringREST文档),我想知道在使用MockMvcBuilders构建MockMvc的过程中,是否有一种方法可以设置AscidActor adoc文件中的属性值 例如,我在index.adoc中 :myAttribute: 是否希望在MockMvc构建期间动态设置它 :myAttribute:myValue 我在AscidActor文档中看到: 默认情况下,属性分配优先级从最高到最高 最低限额如下: Attribute pass

我正在使用SpringMVC和SpringTestSuite(SpringREST文档),我想知道在使用MockMvcBuilders构建MockMvc的过程中,是否有一种方法可以设置AscidActor adoc文件中的属性值

例如,我在index.adoc中

:myAttribute:

是否希望在MockMvc构建期间动态设置它

:myAttribute:myValue

我在AscidActor文档中看到:

默认情况下,属性分配优先级从最高到最高 最低限额如下:

Attribute passed to the API or CLI

Attribute defined in the document

Default value

我想知道如何将它传递到API:-)

我可以想出两种方法来实现这一点。在这两种情况下,在运行测试时,您都会将属性键值对写入一个文件中。然后,您需要将它们放入AscidActor

将它们放入AscidActor的一种方法是更新构建配置以读取文件,然后设置属性。我想这只有在你使用Gradle的情况下才有可能。您可以编写一点Groovy来读入键值对,并将它们添加到
asciidoctor
任务的
attributes
映射中


另一种方法是编写ascidoctorj扩展名,该扩展名读取包含键值对的文件并设置属性。这种方法适用于Maven或Gradle。文档中有一个演示如何使用
预处理器设置属性的示例。

你好,安迪,谢谢你的回答。虽然我放弃了使用这种方法,但我会接受它是正确的。事实证明,每次部署我都会有不同的maven POM,我可以通过“AscidActor maven plugin”使用'Value of the attr'标记轻松设置属性,因此不会有太多麻烦。:-)