本主题介绍 SOAtest 如何监控通过 Sonic ESB 系统的事务,然后生成功能测试用例来检查监控的消息。除了提供对系统消息的可见性之外,这还允许您直接从 SOAtest 重放事务,并验证所监控的功能性是否继续按预期工作。

章节目录: 


供选择的测试创建方法

创建测试的另一种方式是在应用程序运行时,让 SOAtest 的记录代理监控一个或多个 JMS、HTTP 或 MQ 端点上的通讯报文。SOAtest“监听”通讯报文请求和响应,然后构建一个合法请求/响应对的通讯报文文件。然后,将该通讯报文用来生成测试套件,该套件表示在预配置的 SOAP 客户端或消息传送客户端工具中捕获到的行为。详情请参阅从已记录的 HTTP、JMS 或 MQ 通讯报文创建测试

概要

SOAtest 监控通过 Sonic ESB 的事务,然后生成检查所控制消息的功能测试用例。除了提供对系统消息的可见性之外,这还允许您直接从 SOAtest 重放事务,并验证所监控的功能性是否继续按预期工作。

为实现这一目的,必须告诉 SOAtest 如何连接到 Sonic ESB 以及希望 SOAtest 监控什么目标(主题或队列)消息,然后提示它启动监控。SOAtest 将为每个在指定目标上捕获到的 JMS 消息或为过程流内的所有消息(如果使用了过程跟踪主题)生成一个消息传送客户端测试的测试套件。这些测试预先配置了连接参数、请求和目标消息,以便 SOAtest 可以回访相同消息。

SOAtest 可以为以下类型的 JMS 消息生成测试客户端:

  • javax.jms.TextMessage
  • javax.jms.MapMessage
  • javax.jms.ObjectMessage
  • javax.jms.BytesMessage
  • javax.jms.StreamMessage

前提条件

必须将以下 jar 文件添加到 classpath 中(前往 Parasoft> 首选项> Parasoft> 系统属性添加):

  • broker.jar
  • mfcontext.jar
  • sonic_Client.jar

从 Sonic ESB 事务生成测试

若要生成测试,请执行以下操作:

  1. 在可用的测试创建向导中选择 Other> Sonic Enterprise Service Bus 选项。有关访问该向导的详情,请参阅:
  2. 完成 Sonic ESB 向导的第一页,如下:
    1. 连接部分,指定 Sonic ESB 连接设置。
    2. 接收站名称字段中,指定要监控的主题或队列。
      • 可以指定一个常规主题或队列(例如,进入或退出工作流进程),或特殊的“dev.Tracking”跟踪主题。
      • 例如,如果希望跟踪作为流程流一部分发生的所有事件,请指定 dev.Tracking 端点,并将流程设置为 ESB 中的跟踪级别 4。
    3. 接收站类型字段中,指定跟踪目标是主题还是队列。
    4. (可选)在消息选择器字段中,输入一个值作为消息过滤器。更多技巧,请参阅使用消息选择器过滤器
    5. 如果希望 SOAtest 使用 JMS QueueBrowser API,以便跟踪 JMS 队列上传递的消息(而无需从队列中移除它们),则启用保留消息到队列。这允许 SOAtest 在不影响事务的情况下获得对这些消息的可见性。

      注意:保留消息到队列

      关于讨论此选项的潜在并发症以及如何避免它们,请参阅 JMS 队列选项

    6. 在 JNDI 属性表中,指定要应用于该属性的任何其他 JNDI 属性。
  3. 点击下一步。SOAtest 将启动监控消息,该消息匹配上一个向导页面中指定的设置。如果运行另一个向总线发送消息的应用程序,这些消息将在此面板中被注意到。
  4. 在准备停止监控的时候,点击完成。然后,SOAtest 将基于已验证消息创建测试用例。


监控中介信息

除了通过监控触及 Sonic ESB 中的 JMS 端点的事务消息自动生成功能测试之外,还可以可视化和跟踪作为测试触发的事务的一部分发生的流程内事件,然后对它们进行分析以进行验证。

具体方法请参阅对 ESB、数据库和其他系统进行事件监控

  • No labels