本主题包括测试 CORBA(Common Object Request Broker Architecture,公共对象请求代理体系结构)服务器的基本步骤和操作。有几种方法可以确保 CORBA 服务器的正确功能;下面是一些示例和简单的练习,以帮助更好地理解 SOAtest 如何简化服务器测试过程。不同的场景将展示如何将 SOAtest 集成到非 SOAP 服务器的测试中。
本章包含:
注意:如果已经创建了 Java 客户机,请继续场景 2。
若要使用服务器提供的接口/IDL,则需要在客户端生成 java 桩函数。在本节中,我们将介绍从 IDL 到 Java 的简单转换。
下面练习的示例 Calculator.idl 文件包括在 <SOAtest installation directory/<version>/eclipse/plugins/com.parasoft.xtest.libs.web_<version-date>/root/build/examples/CORBA
中。为了使用 IDLJ,请确保安装了 J2SDK,并设置 PATH
变量,以便你可以从任何目录访问 J2SDK 的可执行文件。
若要使用 IDLJ 将 IDL 转换为 Java,请完成以下步骤:
C:\Program Files\Parasoft\SOAtest\[SOAtest version number]\eclipse\plugins\com.parasoft.xtest.libs.web_9.6.0.20130917\root\build\examples\CORBA
)idlj –pkgTranslate Persistent examples.CORBA –fall Calculator.idl
” 自动生成具有正确路径的包。javac/examples/CORBA/*.java
。现在你拥有了与服务器通信所需的必要类文件。请继续场景 2,以便与现有 java 客户机进行 SOAtest 接口。
有关 IDLJ 的更多信息,请参阅 Oracle Java 文档。
在本节中,我们将演示如何使用 SOAtest 的扩展工具从 CORBA 服务器调用 Java 服务。
选择扩展工具节点,在右侧 GUI 面板中 Language 下拉菜单选择合适的语言以访问 CORBA Java 客户端。
例如,对于 Jython,你可以在 Text 框中输入类似如下内容:
# In our example, examples.CORBA.PersistentClient is our CORBA Java Client from examples.CORBA import * from java.lang import * def foo(input, context): # Here we are Initializing the client by providing location of the server, # port number, and the service name client = PersistentClient("goldfish.parasoft.com", 2222, "GoldfishCorbaServer") # Here we are making the actual Method Invocation onto the Service "add(x,y)" return client.add(3, 5) |
foo()
。在本节中,我们将演示如何使用 SOAtest 内部工具从 CORBA 服务器调用非 Java 服务。