如何编写控制器的单元测试

2020-09-21 14:17发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我们正在为商务Web服务(OCC)控制器(例如CartsControllers,UsersController等)编写单元测试。这些控制器中的几乎所有方法都返回Web服务DTO,即以* WsDTO结尾的方法。 此对象转换由dataMapper完成,它是Spring Web应用程序上下文的一部分。 我们面临的挑战是单元测试或集成测试无法访问Web应用程序上下文并从那里获取bean。 如果没有这种方法,则90%的商业Web服务(OCC)控制器方法将无法测试,因为它们都返回DTO。 模拟dataMapper本身不会实现任何目标,因为这将破坏编写测试的目的。

请帮助!!

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我们正在为商务Web服务(OCC)控制器(例如CartsControllers,UsersController等)编写单元测试。这些控制器中的几乎所有方法都返回Web服务DTO,即以* WsDTO结尾的方法。 此对象转换由dataMapper完成,它是Spring Web应用程序上下文的一部分。 我们面临的挑战是单元测试或集成测试无法访问Web应用程序上下文并从那里获取bean。 如果没有这种方法,则90%的商业Web服务(OCC)控制器方法将无法测试,因为它们都返回DTO。 模拟dataMapper本身不会实现任何目标,因为这将破坏编写测试的目的。

请帮助!!

付费偷看设置
发送
3条回答
当学会了学习
1楼-- · 2020-09-21 14:46

嗨,阿米特,

我认为本文可能包含一些有用的信息: https://dzone.com/articles/testing-data-transfer-object-and-rest-controllers

希望这会有所帮助,

Tong__Ming
2楼-- · 2020-09-21 14:45

您可以使用 http://rest-assured.io/ 很酷

示例

  @Test
  公共无效
  lotto_resource_returns_200_with_expected_id_and_winners(){
     
      什么时候()。
              get("/img/lotto/{id}",5)。
      然后()。
              statusCode(200)。
              body(" lotto.lottoId",equalTo(5),
                   " lotto.winners.winnerId",containsOnly(23,54));
 
  }
  
大道至简
3楼-- · 2020-09-21 14:39

MockMvc-常规控制器

保证放心-休息控制器

作为补充,任何人都可以通过MockMvc和" standaloneSetup"来配置Spring安全性。

致谢

一周热门 更多>