集成測試EJB和REST資源的最佳方式是什麼?集成測試EJB和REST資源?
2
A
回答
1
你可以通過使用支持比EJB精簡版以上的容器EJB 3.1 EJBContainer API。 EJB lite應該是最小的而不是最大的。
我知道OpenEJB支持嵌入JAX-RS,不確定其他人。如果他們通過嵌入式Arquillian適配器來支持JAX-RS,他們應該能夠通過標準的EJBContainer API來支持它,這個Java API用於測試Java或者獨立應用程序。
下面是一個例子:
,一個是沒有很好的記載,所以這裏的亮點。
首先,包含嵌入式容器庫。在這種情況下是以下Maven的依賴:
<dependency>
<groupId>org.apache.openejb</groupId>
<artifactId>openejb-cxf-rs</artifactId>
<version>4.0.0-beta-3-SNAPSHOT</version>
<scope>test</scope>
</dependency>
然後在你的測試用例,啓動的EJBContainer:
final Properties properties = new Properties();
properties.setProperty("openejb.embedded.remotable", "true");
EJBContainer.createEJBContainer(properties);
你去好了,現在你可以發送請求到您的服務。使用CXF WebClient,可能看起來像這樣:
Response response = WebClient.create("http://localhost:4204/rest-on-ejb")
.path("/user/create")
.query("name", "dummy")
.query("pwd", "unbreakable")
.query("mail", "[email protected]")
.put(null);
// Then check the results via invoking the bean directly
List<User> list = service.list(0, 100);
for (User u : list) {
if (!users.contains(u)) {
service.delete(u.getId());
return;
}
}
fail("user was not added");
當然,普通的URL或Commons HttpClient也可以。
0
EJB - Arquillian
REST - Rest Assured
相關問題
- 1. REST資源測試
- 2. EJB的集成測試
- 3. 集成測試策略資源
- 4. Rest API的集成測試
- 5. Glassfish上本地EJB的集成測試
- 6. 運行集成測試的問題EJB
- 7. 集成Selenium Web測試和REST API測試
- 8. Spring集成測試:無法檢測默認資源位置
- 9. REST - 資源和集合表示
- 10. Spring和EJB集成
- 11. Dropwizard和EJB集成
- 12. 集成測試Grails REST控制器
- 13. 混合資源(REST)和非資源
- 14. Java/Groovy集成測試受保護資源
- 15. 單元或集成測試資源文件目錄佈局
- 16. 關於集成測試的好書或其他資源?
- 17. 集成測試資源路徑的最佳實踐?
- 18. 集成測試發現資源中的問題
- 19. 如何進行dropwizard服務器資源的集成測試?
- 20. C#測試資源
- 21. Javascript測試資源
- 22. 使用JUnit測試EJB 3.1獲取錯誤無效的資源
- 23. maven3主要資源VS測試資源
- 24. 在測試EJB時測試EJB
- 25. SBT/Scala和集成測試
- 26. 測試RabbitMQ和Spring集成
- 27. JUnit和Ruby測試集成
- 28. 單元和集成測試
- 29. Spring oauth2和集成測試
- 30. 集成測試和圖像