JUnit测试简单的外观

时间:2012-06-11 15:39:42

标签: java junit

尝试为以下门面提供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");
        }
    }
}

1 个答案:

答案 0 :(得分:0)

正如其他人所说,你可以写一个首先存储一些Items的单元测试,然后在同一个测试中,检索Items并确保你得到的是“等效的”你首先存储的是什么。

例如(如果我冒险猜测),听起来像我的Itemmgr类可能会延伸到包含易失性和持久版本(也许一个版本在RAM中,也许一个是在磁盘上)。您的测试可以确保item1 == item2在RAM驻留版本中返回true,但item1 != item2 && item1.equals(item2)在持久测试中返回true以确保item2被序列化或从某处复制并且不是'只是从某种Map中检索原始文件。只是一些想法。