尝试为下面的外观设计一个JUnit测试--我知道这应该很简单,但我总是一片空白。任何能让我朝着正确方向前进的想法。它不需要很复杂--我只需要完成它。
package business;
import domain.Items;
import services.exceptions.ItemNotFoundException;
import services.itemservice.IItemsService;
public class Itemmgr {
@SuppressWarnings("static-access")
public void store(Items item) {
Factory factory = Factory.getInstance(IItemsService.NAME);
IItemsService storeItem = (IItemsService)factory.getInstance(IItemsService.NAME);
storeItem.storeItem(item);
}
public void get(Items item) throws ClassNotFoundException, ItemNotFoundException {
Factory factory = Factory.getInstance(IItemsService.NAME);
@SuppressWarnings("static-access")
IItemsService getItem = (IItemsService)factory.getInstance(IItemsService.NAME);
try {
getItem.getItems("pens", 15, "red", "gel");
} catch (ClassNotFoundException | ItemNotFoundException e) {
e.printStackTrace();
System.out.println("Error - Class or Item Not Found");
}
}
}发布于 2012-06-13 06:40:37
正如其他人所说,您可以只编写一个单元测试,首先存储一些Items,然后在同一个测试中检索Items,并确保您返回的内容与您最初存储的内容“相等”。
例如(如果我可以大胆猜测一下),在我看来,您的Itemmgr类可能会被扩展到包括易失性和持久性版本(可能一个版本在内存中,也可能一个在磁盘上)。您的测试可以确保item1 == item2在驻留内存的版本中返回true,但在持久性测试中item1 != item2 && item1.equals(item2)返回true,以确保item2是从某处序列化或复制的,而不仅仅是从某种Map中检索原始数据。只是一些想法。
https://stackoverflow.com/questions/10983318
复制相似问题