- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
给定一个 SchedulerResource
类,它具有以下 createSchedules
方法和该方法中使用的一堆常量,我如何使用 mockito 为createSchedules
方法?
@PostMapping
public ResponseEntity<CustomResponse> createScheduler(@Valid @RequestBody SchedulerDTO schedulerDTO) {
if(schedulerDTO != null)
{
schedulerService.saveScheduler(schedulerDTO);
customResponse.setMessage("Schedule has been created!");
return new ResponseEntity<>(customResponse ,HttpStatus.OK);
} else {
customResponse.setMessage("Not Create!");
return new ResponseEntity<>(customResponse,HttpStatus.NOT_FOUND);
}
}
测试类:
@Test
public void createScheduler_Success() throws Exception {
SchedulerDTO scheduler = new SchedulerDTO();
Long sId = new Long(2);
scheduler.setSchedulerId(sId);
scheduler.setLinearChannelId((long)1);
scheduler.setDurationMs((long) 5000);
scheduler.setStatus(StatusEnum.NEW);
scheduler.setStartTime("2018-03-01T05:55:25");
scheduler.setEndTime("2018-03-01T05:57:25");
when(schedulerService.saveScheduler(scheduler)).thenReturn(scheduler);
mockMvc.perform(post("/linear/api/1.0/schedules")
.contentType(MediaType.APPLICATION_JSON)
.content(asJsonString(scheduler)))
.andExpect(status().isOk())
.andExpect(jsonPath("$.message", is("Schedule has been created!")));
}
所以没关系:
if(schedulerDTO != null)
{
schedulerService.saveScheduler(schedulerDTO);
customResponse.setMessage("Schedule has been created!");
return new ResponseEntity<>(customResponse ,HttpStatus.OK);
}
但是关于:
else{
customResponse.setMessage("Not Create!");
return new ResponseEntity<>(customResponse,HttpStatus.NOT_FOUND);
}
那么,- 我该如何为 schedulerDTO == null
的情况编写代码?
最佳答案
简单:您传入 null,然后为您的 mockMvc
对象设置不同规范,例如 andExpect(status().isNotFound()
(或类似的东西)。
除此之外,您还可以使用 verifyZeroInteractions() 等方法 例如,确保没有调用转到那个模拟的服务对象。
从这个意义上说,它与测试另一种情况并没有太大区别:您退后一步,查看 else 分支中发生的所有事情,然后想办法观察/验证它们。
关于java - 使用 mockito 的 Unitest Create(Post) 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50403402/
假设我在模板中有 {{registered}} 变量。我写了一段测试: def nice_test(): response = self.client.post(reverse('app:r
我有一个函数,如果存在无效字符,则解析 xml 字符串,etree.parse 会引发解析错误,我的函数通过解码字符串并将字符串编码回来来处理该错误。它如何测试处理异常的部分?对于无效数据,它会像对于
我从事软件开发工作,在一个具有如下目录结构的模块中: src: 是您将放置正在处理的源代码的目录 include: 是放置“.h”文件的目录 lib : 是安装库的地方 bin: 是安装二进制文件的地
我正在使用 peewee ORM 和 sanic(sanic-crud) 作为应用服务器构建 CRUD REST API。一切正常。我为此编写了几个单元测试用例。 但是,我在运行单元测试时遇到了问题。
我即将开始我的第三个中型项目并希望(我承认这是我生命中的第一次)开始使用单元测试。不过,我不知道使用哪种方法,unitests 或 doctests。哪种方法最有效,或者初学者应该选择哪种方法实现?谢
我编写了这个简单的代码来测试我的模型: class NDBTestCase(unittest.TestCase): def setUp(self): logging.getLo
我正在用 c++ 和 visual studio 做我的第一个测试,我不知道为什么,当它在程序中没有发生时,我有一个“未解析的外部符号”的问题。 Error 97 error LNK2001: unr
我正在构建一个带有一些 unitest 设施的简单图书馆。但是,make 提示在构建 unitest 时存在 undefined reference 。我已经发布了所有代码和 makefile。这是什
我正在尝试为一个指令编写一个测试,该指令在其构造函数中接收一个窗口对象 指令代码: import { Directive, ElementRef, Input, OnChanges, OnDestr
给定一个 SchedulerResource 类,它具有以下 createSchedules 方法和该方法中使用的一堆常量,我如何使用 mockito 为createSchedules 方法? @Po
我想为我的 viewModel 类编写一个单元测试: @RunWith(MockitoJUnitRunner::class) class MainViewModelTest { @get:Ru
自从昨天安装了新的 CTP4 之后,我就不可能再运行 Unittests 了。当我启动它们时,VS 编译它们,然后它们停留在“Pending”状态,没有任何反应。当我尝试调试它们时也会发生同样的情况。
我有一个在 Ubuntu 16 上运行良好的 python 代码。我安装了 Ubuntu 18,现在当我在执行 unitest 时尝试调试代码时,每次按“n”或“s”时都会收到以下警告: ipdb>
带有 Postgres 的 Windows 上的 Django 1.6.1 我正在使用 unittest 来测试将 .cfg 文件上传到服务器的 View 。我面临 2 个名为 的错误 (1) Tra
我在 Ubuntu 18.04 和 Anaconda 版本 4.5.10 上使用 visual studio code 1.27.2 来管理我的虚拟环境。 我在 vscode 中安装了 Anacond
我找到了几篇解释 TDD/BDD 的博客文章,但这些示例通常非常基础。通常它们仅用于模型。我想看看人们是如何在现实生活中真正使用 BDD 的。 我很乐意看到一些以测试优先风格构建的 Django 应用
我是一名优秀的程序员,十分优秀!