快速业务通道

使用NetBeans IDE测试Enterprise Beans - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-22

使用NetBeans IDE测试Enterprise Beans

时间:2010-12-26

使用 NetBeans IDE 测试 Enterprise Beans

John Jullion-Ceccarelli 和 Petr Blaha

JUnit 并不是测试企业应用程序的最佳测试框架,因为 JUnit 运行在与 enterprise beans 不同的 JVM 上。因此,必须使用远程接口来访问并测试 enterprise beans。

开始之前,必须在计算机上安装 Sun Java System (SJS) Application Server Platform Edition 8.1(下载)。您无法将企业应用程序部署到绑定的 Tomcat 服务器。还必须在 IDE 中注册应用程序服务器,通过选择 Tools > Server Manager。

设置示例项目

下载示例项目 TestEnterpriseBean 并在 IDE 中打开它。该 bean 有一个会话 bean (AdminBean),拥有三个简单的业务方法:

public String getString(String name) { return "response:" + name; } public int getInt(int number1, int number2) { return number1 * number2; } public vo.Person getVO() { return new vo.Person("Joe User",13); }生成测试

右键单击项目的 Test Libraries 节点,然后选择 Add JAR/Folder 将应用程序服务器的 lib/j2ee.jar 和 lib/appserv-rt.jar 文件添加到测试类路径。

展开 Enterprise Beans 节点,然后双击 AdminSB 在 Source Editor 中打开 AdminBean.java。

按下 Ctrl-Alt-J 生成测试。单击 OK 使用默认值选项运行测试。

删除基础架构方法的测试:

testSetSessionContext

testEjbActivate

testEjbPassivate

testEjbRemove

testEjbCreate

将以下字段声明添加到 AdminBeanTest:private beantest.AdminRemote admin;

右键单击 AdminBeanTest.java,然后选择 Enterprise Resources > Call Enterprise Bean。选择 AdminSB,然后单击 OK。IDE 会输入一个 lookupAdminBean 方法。

更改 lookupAdminBean 方法,使用全局 JNDI 名代替本地名:private beantest.AdminRemote lookupAdminBean() { try { javax.naming.Context c = new javax.naming.InitialContext(); Object remote = c.lookup("ejb/AdminBean"); beantest.AdminRemoteHome rv = (beantest.AdminRemoteHome) javax.rmi.PortableRemoteObject.narrow(remote, beantest.AdminRemoteHome.class); return rv.create(); }

将以下粗体表示的代码添加到 setUp 和 tearDown 方法中:protected void setUp() throws Exception { admin = lookupAdminBean(); } protected void tearDown() throws Exception { admin.remove(); }

使用NetBeans IDE测试Enterprise Beans(2)

时间:2010-12-26

实现对 enterprise bean 的业务方法进行测试的方法:

public void testGetString() throws java.rmi.RemoteException { System.out.println("testGetString"); assertEquals("response:Test",admin.getString("Test")); } public void testGetInt() throws java.rmi.RemoteException { System.out.println("testGetInt"); assertEquals(5*3,admin.getInt(5,3)); } public void testGetVO() throws java.rmi.RemoteException { System.out.println("testGetVO"); assertEquals("xxxxx", admin.getVO().getName()); }

运行测试

右键单击 TestEnterpriseBean 项目,然后选择 Deploy Project。

选择 Run > Test "TestEnterpriseBean" (Alt-F6)。IDE 会运行 JUnit 测试,然后显示以下输出:testGetString testGetInt testGetVO Testsuite: beantest.AdminBeanTest Tests run: 3, Failures: 1, Errors: 0, Time elapsed: 1.903 sec ------------- Standard Outp

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号