Seam工程要能够运行单元测试首先要把JBoss Embedded容器环境搭建起来
还是采用搭建Tomcat时候的embedded-jboss-beta3.SP10
1. 将JBoss Embedded的容器中的bootstrap目录下的东西复制到java工程的测试环境下,例如:src/test/resources
2. 在测试环境下建立WEB-INF目录,复制实际发布的WEB-INF目录下的东西到此目录
3. 复制hibernate.cfg.xml,seam.properties等项目配置到测试环境的根目录下,例如:src/test/resources
<目录结构可以参考附件图片>
4. 采用如下的maven配置,搭建相应的lib库
<!-- Unit Test -->
<dependency>
<groupId>org.jboss.seam.embedded</groupId>
<artifactId>hibernate-all</artifactId>
<version>beta3.SP12</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jboss.seam.embedded</groupId>
<artifactId>jboss-embedded-all</artifactId>
<version>beta3.SP12</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jboss.seam.embedded</groupId>
<artifactId>thirdparty-all</artifactId>
<version>beta3.SP12</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jboss.seam.embedded</groupId>
<artifactId>jboss-embedded-api</artifactId>
<version>beta3.SP12</version>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.jboss.microcontainer</groupId>
<artifactId>jboss-deployers-client-spi</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>5.9</version>
<scope>test</scope>
</dependency>
这样,单元测试的微环境搭建成功
接下来编写单元测试的样例, 所有的单元测试类都要继承与SeamTest类
public class UserDaoTest extends SeamTest {
@Test
public void testCRUD() throws Exception {
new FacesRequest() {
@Override
protected void invokeApplication() throws Exception {
User user = new User();
user.setUsername("Kevin Chen");
user.setPassword("Orz");
IUserDao userDao = (IUserDao) getValue("#{userDao}"); // 获取注入对象
Assert.assertNotNull(userDao);
userDao.save(user);
System.out.println(user.getId());
Assert.assertNotNull(userDao.get(user.getId()));
user.setUsername("Kingdom Sky");
userDao.update(user);
User user2 = userDao.get(user.getId());
System.out.println(user2.getUsername());
Assert.assertEquals(user2.getUsername(), user.getUsername());
Assert.assertEquals(userDao.get(user.getId()).getUsername(),
"Kingdom Sky");
List<User> users = userDao.findByCriteria();
System.out.println(users.size());
for (User u : users) {
System.out.println("Username : " + u.getUsername());
}
}
}.run();
}
}
最后,要在eclipse下运行单元测试,需要安装TestNG插件
- 描述: 测试工程目录
- 大小: 25.8 KB
- 描述: 单元测试成功
- 大小: 28.8 KB
分享到:
相关推荐
JBoss_Enterprise_Application_Platform-5.0.1-Seam_Reference_Guide-en-US.pdf
2007年Shai Avidan 和Ariel Shamir论文《Seam Carving for Content-Aware Image Resizing》所提出方法的Matlab代码实现和作者的论文。 效果非常炫,而且代码不长
对于一个图片seam carving的横向和纵向删除seam的操作,可以显示出seam曲线(matlab)
JBoss Seam In Action
seam-978-1-8471-9592-0 Seam 2.x 网页开发
Gumroad - ZBrush 35 SeamStitch Brushes 35个缝合的接缝画笔和高度/阿尔法贴图,1024x1024或2048x2048在Tiff,PSD和ZBrush画笔格式。 35 brushes and Height/alpha maps, all 1024x1024 or 2048x2048 in Tiff, PSD...
java jboss seam jboss-seam-selectitems
1、 Java环境的安装和配置 2、 JBoss环境的安装和配置 3、 Ant环境的安装和配置 4、 Seam环境的安装和配置 5、 Eclipse环境及JBoss Tools 插件的安装和配置
JBoss_Seam--中文、Seam教程,中文Seam针对初学者很好的讲解及实例。希望对您有所收获。
seam setup 输入项目原型和数据库信息 seam create-project 创建基础项目结构 seam generate 反向工程数据库,创建管理数据库的CRUD程
本文用图例的方法讲解啦JBoss Seam工程的创建过程。现在JBoss Seam工程的创建的介绍很少的。希望我的东西能对大家的学习和研究有很好的帮助!
用Python实现的Seam Carving算法,参考资料https://karthikkaranth.me/blog/implementing-seam-carving-with-python
jboss-seam2.0文档.rarjboss-seam2.0文档.rar
调了半天终于可以运行了留作备份资料 seam ejb jsf 自己留作资料备份
seam下一代web开发框架
Seam - 语境相关的组件 ,学习seam的好资料.
Seam2[1][1].0中文参考手册
Algorithm-seam-carving-js.zip,seam-carver的javascript实现。seam carver是一种基于内容的图像缩放算法,算法是为计算机程序高效、彻底地完成任务而创建的一组详细的准则。
Seam 是一种业级 企 Java 的应规用程序框架。它的灵感源自下列原 : 只有一种“工具” Seam为 应 业务业业 义 种统 组 你的 用程序中所有的 定 了一 一的 件模型。 Seam组件可能是 态义 关关 态 有状 的,包含与几...