当使用pathParameters来记录URI路径参数时,如下所示
@Test
public void documentGetRouteById() throws Exception {
    this.mockmvc.perform(get("/route/{id}","FooBar")).andExpect(status().isOk())
            .andDo(document("api-getRouteById",pathParameters(parameterWithName("id").description("die Routen ID"))));
}

我得到以下的兴趣

java.lang.IllegalArgumentException: urlTemplate not found. Did you use RestDocumentationRequestBuilders to build the request?
    at org.springframework.util.Assert.notNull(Assert.java:112)
    at org.springframework.restdocs.request.PathParameteRSSnippet.extractUrlTemplate(PathParameteRSSnippet.java:95)
    at org.springframework.restdocs.request.PathParameteRSSnippet.extractActualParameters(PathParameteRSSnippet.java:82)
    at org.springframework.restdocs.request.AbstractParameteRSSnippet.verifyParameterDescriptors(AbstractParameteRSSnippet.java:77)
    at org.springframework.restdocs.request.AbstractParameteRSSnippet.createModel(AbstractParameteRSSnippet.java:65)
    at org.springframework.restdocs.request.PathParameteRSSnippet.createModel(PathParameteRSSnippet.java:67)
    at org.springframework.restdocs.snippet.TemplatedSnippet.document(TemplatedSnippet.java:64)
    at org.springframework.restdocs.mockmvc.RestDocumentationResultHandler.handle(RestDocumentationResultHandler.java:101)
    at org.springframework.test.web.servlet.mockmvc$1.andDo(mockmvc.java:158)

我很确定我做了测试设置,如解释here.

我可能做错了什么?

(Spring REST文档版本为1.0.0.BUILD-SNAPSHOT)

解决方法

异常信息正在试图指向正确的方向:

urlTemplate not found. Did you use RestDocumentationRequestBuilders to build the request?

您需要使用RestDocumentationRequestBuilders,以便Spring REST文档可以捕获URL并从中提取参数.这是mentioned in the documentation,它说:

To make the path parameters available for documentation,the request must be built using one of the methods on RestDocumentationRequestBuilders rather than mockmvcRequestBuilders.

将静态导入的mockmvcRequestBuilders.get替换为一个用于RestDocumentationRequestBuilders.get应该可以解决问题.

java – pathParameters文档异常(urlTemplate未找到)的更多相关文章

  1. ios – 两个类,回调和单元测试

    而且,我不觉得这样的行为会很容易测试?

  2. php – 为什么静态方法是不可测的?

    为什么静态方法是不可测的?举例说明(如果可能的话PHP).静态方法本身不是不可测试的,但如果被测试的对象调用静态方法,那么测试不能“进入”,而是调用存根方法.如果正在测试的对象调用一个常规的方法,测试可以给它一个替代对象,该方法的存根实现.一般来说,严格的依赖关系是可测试的,而依赖注入(googleit)使代码更具可测试性.例如,假设我们有一个静态方法getCurrentUser()被我们正在测试

  3. php – 测试函数是否从静态上下文运行

    我正在编写一个PHP类,并且包含了一些静态函数,可以快速访问,因为它们很常用,功能也很简单.但是,他们确实使用其中的对象进行数据库访问.我可能会在整个代码中使用静态和非静态上下文中的这些静态方法,因此我希望能够测试是从静态或非静态上下文调用该函数,以便我可以避免创建重复的对象如果从非静态上下文调用该函数(此实例对象和要静态使用的函数中的实例对象).有没有什么方法可以在函数中测试它,以便我可以使用实

  4. java – Espresso 2.0 – 在扩展junit3 testcase的类中使用@Test注释的方法

    当使用Espresso2.0附带的新ActivityInstrumentationTestCase2类时,我得到了一个奇怪的警告方法,使用@Test内部类扩展junit3testcase.我的课程看起来就像谷歌提供的那样:我已经为build.gradle添加了所有必要的东西:有没有办法让这个警告消失?解决方法ActivityInstrumentationTestCase2是一个JUnit3测试用例

  5. javascript – 如何用Jasmine窥探静态类方法

    我有一个静态方法的类,我想在Jasmine中测试.我知道静态方法不能在类的实例上调用.所以除了找不到spyOn的方法之外,我的测试没有通过,但是如何用Jasmine在类中测试静态方法呢?茉莉花测试解决方法你应该能够使用spyOn使它成为间谍.间谍也不是要直接测试–它们是一种工具,因此您可以更加确定地并且孤立地测试其他代码.

  6. java – 对象与静态方法的设计

    如下图所示,有两种简单的方法可以使流式复印机.我应该去哪一个,为什么?VS解决方法我将使用非静态(实例)版本,并将其作为与setter的显式依赖关系提供给消费者:嘲笑它进行单元测试是微不足道的,所以对消费者的测试并不适用于实施;交换功能很简单,例如:使用子类;>依赖注入系统很好地工作.编辑在回答“有用的!”

  7. java – @BeforeClass vs static {}

    我在使用JUnit编写一些测试用例.我需要初始化一些静态变量,这些变量将用于该类中的所有测试用例.为此,我可以使用>静态初始化程序块或>@BeforeClass的静态方法使用一个以上的优点是什么?

  8. java – 如何单元测试Spring ResourceHandlerRegistry提供的静态资源

    我正在尝试对一个新的SpringMVC项目进行单元测试.我有一个服务于index.jsp的家庭控制器的通过测试.我正在尝试在WebConfig中测试由ResourceHandlerRegistry提供的静态资源.有关如何正确执行此操作的任何提示?以下是我的代码:print()的输出:解决方法使用标准配置如果你执行get“/resources/css/test.css”而不是“resources/c

  9. 将C库与Haskell库静态链接

    安装程序:我有一个Haskell库HLib,调用C/C++后端CLib以提高效率.后端小,专门用于HLib.与CLib的接口只能通过HLib暴露;HLib测试,HLib基准测试和依赖于HLib的第三方库不会直接对CLib进行FFI调用.从测试/基准/第三方lib的角度来看,HLib应该纯粹是Haskell.这意味着在例如HLib测试的cabal文件部分中,应该没有对-lCLib,libCLib等的

  10. java – pathParameters文档异常(urlTemplate未找到)

    当使用pathParameters来记录URI路径参数时,如下所示我得到以下的兴趣我很确定我做了测试设置,如解释here.我可能做错了什么?

随机推荐

  1. 基于EJB技术的商务预订系统的开发

    用EJB结构开发的应用程序是可伸缩的、事务型的、多用户安全的。总的来说,EJB是一个组件事务监控的标准服务器端的组件模型。基于EJB技术的系统结构模型EJB结构是一个服务端组件结构,是一个层次性结构,其结构模型如图1所示。图2:商务预订系统的构架EntityBean是为了现实世界的对象建造的模型,这些对象通常是数据库的一些持久记录。

  2. Java利用POI实现导入导出Excel表格

    这篇文章主要为大家详细介绍了Java利用POI实现导入导出Excel表格,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

  3. Mybatis分页插件PageHelper手写实现示例

    这篇文章主要为大家介绍了Mybatis分页插件PageHelper手写实现示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

  4. (jsp/html)网页上嵌入播放器(常用播放器代码整理)

    网页上嵌入播放器,只要在HTML上添加以上代码就OK了,下面整理了一些常用的播放器代码,总有一款适合你,感兴趣的朋友可以参考下哈,希望对你有所帮助

  5. Java 阻塞队列BlockingQueue详解

    本文详细介绍了BlockingQueue家庭中的所有成员,包括他们各自的功能以及常见使用场景,通过实例代码介绍了Java 阻塞队列BlockingQueue的相关知识,需要的朋友可以参考下

  6. Java异常Exception详细讲解

    异常就是不正常,比如当我们身体出现了异常我们会根据身体情况选择喝开水、吃药、看病、等 异常处理方法。 java异常处理机制是我们java语言使用异常处理机制为程序提供了错误处理的能力,程序出现的错误,程序可以安全的退出,以保证程序正常的运行等

  7. Java Bean 作用域及它的几种类型介绍

    这篇文章主要介绍了Java Bean作用域及它的几种类型介绍,Spring框架作为一个管理Bean的IoC容器,那么Bean自然是Spring中的重要资源了,那Bean的作用域又是什么,接下来我们一起进入文章详细学习吧

  8. 面试突击之跨域问题的解决方案详解

    跨域问题本质是浏览器的一种保护机制,它的初衷是为了保证用户的安全,防止恶意网站窃取数据。那怎么解决这个问题呢?接下来我们一起来看

  9. Mybatis-Plus接口BaseMapper与Services使用详解

    这篇文章主要为大家介绍了Mybatis-Plus接口BaseMapper与Services使用详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

  10. mybatis-plus雪花算法增强idworker的实现

    今天聊聊在mybatis-plus中引入分布式ID生成框架idworker,进一步增强实现生成分布式唯一ID,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

返回
顶部