【发布时间】:2021-03-29 16:21:29
【问题描述】:
如何为以下代码编写 Mockmvc 测试用例:
我的控制器类
@RestController
公共类 CartController {
@Autowired
private CartService cartService;
@GetMapping(path = "/addToCart", produces = MediaType.APPLICATION_JSON_VALUE)
public String cart(@Valid @RequestBody Cart cart) {
return cartService.cart(cart);
}
}
我的 CartService 类:
@服务
公共类 CartService {
private LoginRepository loginRepository;
@Autowired
private ProductRepository productRepository;
@Autowired
private CartRepository cartRepository;
@Autowired
private EmailService emailService;
public CartService(LoginRepository loginRepository) {
this.loginRepository = loginRepository;
}
public String cart(Cart cart) {
String username = cart.getUserName();
System.out.println(username);
String password = cart.getPassword();
String email = cart.getEmail();
if (loginRepository.existsByUserNameAndPassword(username, password)) {
String productname = cart.getProductName();
System.out.println(productname);
String price = cart.getPrice();
String discription = cart.getDiscription();
if (productname != null) {
if (productRepository.existsByProductNameAndPriceAndDiscription(productname, price, discription)) {
Integer count = cartRepository.countByUserName(username);
System.out.println(count);
cartRepository.save(new Cart(username, password, email, productname, price, discription, count));
return "{\"message\":\"product Successfully added to cart\"}";
} else {
throw new ResponseStatusException(
HttpStatus.NOT_FOUND, "entity not found"
);
}
} else {
throw new ResponseStatusException(HttpStatus.BAD_REQUEST);
}
} else {
throw new ResponseStatusException(HttpStatus.NOT_FOUND);
}
}
我不知道如何使用 mockmvc 为上述代码编写测试用例。我不知道如何为 if else 语句编写 mockmvc 测试用例。所以请帮助我如何为整个代码编写 mockmvc 测试用例,以便我也可以对 if else 语句进行 mockmvc 测试。
【问题讨论】:
标签: spring-boot junit mockmvc