BCB环境下CORBA实做之测试服务器

品雪译
http://pinxue.yeah.net
1999.4
如欲转载请与本人联系

C++Builder提供两种测试调试CORBA应用的方法:

如果与其它分布应用一起,可以用C++Builder的远程调试(remote debugging),它支持把你的分布式应用程序当作整体进行调试而不是测试每个片断。调试器可以响应指定的CORBA事件(诸如客户尝试定位服务器等),这要在事件日志上增加条目或停在断点上。使用Degug Options对话框的Distributed页说明想跟踪哪个CORBA事件及想要调试器怎样响应这些事件。

另外,C++Builder带有CORBATest演示,它建立一个通用客户以允许你测试自己的服务器界面。CORBATest记录并运行查测CORBA服务应用程序的脚本。

注意:如果计划使用CORBATest测试许多服务器,把它安装到Tools菜单会方便些。(Tools|Configure Tools,用Tools Options Dialog加入CorbaTest.exe)。

在用CORBATest测试CORBA应用之前,服务器的界面必须注册到一个运行着的界面仓库中:

1、确认Visibroker SmartAgent在运行,看Tools|Visibroker SmartAgent是否checked。

2、运行要测试的服务器程序。

3、用Tools|IDL Respository加入.IDL文件以服务器应用程序加进Interface Repository。尽管可能使用任何一个运行着的界面仓库,但可能会想用专门的测试仓库,这样你的测试不会受其它用户的干扰。要启动一个专用测试仓库,在Update IDL Respository对话框中单击Add IREP,对话框会在选择Tools|IDL Repository后出现。

4、运行CORBATest.exe开始测试,它可以从演示代码建立($BCB\examples\corba\corbatst)。


记录并运行测试脚本

一个测试脚本就是一套要调用的CORBA对象方法,当然还有相关的所有参数。一个脚本可以包含对同一方法的多次调用(如测试不同的参数值)。

往命令面板(中上)加入命令就可建立一个脚本。加入命令:

1、如果要用的对象在对象面板(左上)里没有标签页,选Edit|Add Object,从对话框中选相应的响应ID。所谓响应ID是形为IDL:MyInterface1:1.0的字符串,其中MyInterface是在.IDL文件中定义的界面名字。选定对象后,给它起个名字。

2、选择对象的标签页,页签为1指定的对象名字。页中列出了可用的方法。

3、将对象面板中选中的方法拖到命令面板里就可加入到脚本中。

4、当在对象面板里选中方法时,右上的细节面板会显示出其参数,在此提供必要的输入值。

重复以上四步加入多条命令。选择Edit|Save Script As保存。File|New Script建新的脚本。

Run|Run或点RunScript按钮运行脚本。运行时,测试工具使用动态调用界面调用CORBA服务器,传递指定的参数值。返回值及所有方法的全部返回参数都显示在结果区。