我正在使用(EJB,JPA和JPQL)在JAVA EE中創建一個簡單的Web應用程序。我想知道如何使用到的Mockito測試EJB來測試模型。我想嘲笑上下文(數據庫和屬性)在Java EE中的Junit測試(JPA)
我該怎麼辦呢?
@Mock
private EntityManager mockedEntityManager;
private static TendererBean tendererBean;
private static TendererManagerBean tendererManagerBean;
private static EJBContainer container;
final Properties p = new Properties();
p.put("jdbc/Mydatabase", "new://Resource?type=DataSource");
p.put("jdbc/Mydatabase.JdbcDriver", "apache_derby_net");
p.put("jdbc/Mydatabase.JdbcUrl", "jdbc:derby://localhost:1527/Mydatabase");
container = EJBContainer.createEJBContainer(p);
final Context context = container.getContext();
tendererBean = (TendererBean) context.lookup("java:global/classesTendererManagerBean");
我看你想使用derby,這樣的。而不是問「我怎麼做」,說明你與你的嘗試遇到的問題。 – Gimby
是的,問題是我想要爲我的EJB方法(如註冊,更新和刪除)創建測試單元,因爲我應該嘲笑我的上下文,在我的應用程序中使用JSF,EJB和JPA進行持久化 –
你使用CDI?依賴注入使測試/模擬變得更容易。如果你不使用它,那麼我會建議先查看依賴注入。 – Kai