我似乎无法找到任何解决此问题的在线教程
我有这样的if声明:
if (basket.getCustomerId() != null) {
Basket exBasket = findBasketByCustomerId(basket.getCustomerId());
if (exBasket != null && exBasket.getBasketId() != null) {
return exBasket;
}
Run Code Online (Sandbox Code Playgroud)
我想写一个单元测试,测试每一行,看看它是否做得对.
有任何想法吗?
@Test
public void testBasketWithANullCustomerId(){
basketInformationServiceImpl.createBasket(mockBasket);
assertNotNull(mockBasket.getCustomerId());
}
Run Code Online (Sandbox Code Playgroud)
单元测试的目的不是测试语句而是方法.正确的做法是不考虑这一行,而是考虑它出现的方法,并询问你想要该方法做什么:它需要什么样的输入,以及它应该产生什么样的输出?
然后编写带有一些典型输入的测试,并检查它们是否给出正确的输出,以及一些边缘情况输入(如null0 Integer.MAX_VALUE,等)并检查您是否也获得了正确的输出.
如果这是你的整个方法(实际上它不是,但如果它是它的本质),我会测试:
basket带有null客户ID;null篮子(除非你确定这种情况永远不会发生),因为目前这段代码会给出一个NullPointerException;exBasket;exBasket的null;exBasket非空的,但其篮子ID为null.| 归档时间: |
|
| 查看次数: |
13512 次 |
| 最近记录: |