Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Published by Scroll Versions from space FUNCTDEV and version SOAVIRT_9.10.6_CTP_3.1.2

本主题解释如何配置和应用事件监控工具,该工具跟踪系统内部的事件(例如,ESBs、Java 应用程序、数据库等),并允许你将它们作为 ,并允许您将它们作为 SOAtest 端到端测试场景的一部分。本章包含:

Table of Contents
maxLevel1

了解事件监控器

事件监视工具提供了对中介消息的可见性,而不需要直接访问消息传递系统的接口。此外,你可以应用可用的工具集来验证消息是否满足功能期望。事件监视工具提供了对中介消息的可见性,而不需要直接访问消息传递系统的接口。此外,您可以应用可用的工具集来验证消息是否满足功能期望。

SOAtest 为监控许多系统提供内置支持,包括:

  • TIBCO 企业消息系统
  • Sonic 企业服务总线系统
  • Oracle/BEA Aqualogic 服务总线
  • Software AG webMethods Broker
  • IBM WebSphere ESB
  • 其他基于 JMS 的系统
  • Java 应用程序
  • 关系数据库

你还可以配置该工具来监视任何基于 您还可以配置该工具来监视任何基于 API 的自定义事件源,例如来自其他供应商的非 JMS 系统、自定义日志框架等。 

Info
title事件监视器应该始终定位为测试套件中的第一个测试。

如果你想要监视多个目标组件(例如,Java 如果您想要监视多个目标组件(例如,Java 方法调用和 JMS 主题),那么你可以将多个事件监视器添加到你的测试套件中,并相应地配置每个事件监视器。主题),那么您可以将多个事件监视器添加到您的测试套件中,并相应地配置每个事件监视器。

若要配置它,则需要告诉 SOAtest 如何连接到你的系统,以及希望它监视什么。 如何连接到您的系统,以及希望它监视什么。 

当你运行测试套件时,SOAtest 当您运行测试套件时,SOAtest 将启动事件监视器,然后在测试套件的测试执行时保持它的运行。SOAtest 在指定的事件/消息发生时监视并报告它们。然后可以链接其他工具来验证或进一步处理所监视的事件/消息。

...

可以通过向测试套件添加额外的事件监视器并相应地配置每个事件监视器来监视多个目标组件。

测试套件执行

测试套件执行是事件监视工具的典型和推荐用法。将事件监视工具添加到你的测试套件中,并使其成为测试步骤之前的第一个测试,你希望它在其中开始监视。当选择并运行父测试套件时,事件监视器将在适当的步骤中自动启动,并在测试套件中的其他测试执行时继续监视。当以下两个事件中的第一个发生时,它将停止:测试套件执行是事件监视工具的典型和推荐用法。将事件监视工具添加到您的测试套件中,并使其成为测试步骤之前的第一个测试,您希望它在其中开始监视。当选择并运行父测试套件时,事件监视器将在适当的步骤中自动启动,并在测试套件中的其他测试执行时继续监视。当以下两个事件中的第一个发生时,它将停止:

  1. 测试套件中的最后一个测试(或者数据源中的最后一行,如果测试套件测试在一个数据源上迭代)已经完成执行,最后一个事件已经被检索,监控连接已经被销毁。
  2. 已达到最大监视执行持续时间(此值在工具的 Options 选项卡中配置)。

不需要将事件监视器的父测试套件设置为 测试并发运行 Tests run concurrently。SOAtest 将自动将事件监视器识别为一个特殊的工具,并相应地管理它的并发执行。

...

可以配置事件监视器的连接设置,并在 SOAtest 之外运行目标系统时独自执行它。例如,在手动浏览应用程序的 Web 接口时,你可能希望在后端中间件系统中监视 接口时,您可能希望在后端中间件系统中监视 JMS 消息。 

若要查看实时记录的事件,请打开 Event Viewer 选项卡。事件监视工具的运行时间将在 Options 选项卡的 Maximum monitor execution duration (milliseconds) 设置下设置。当使用 Poll after each test execution 模式选择 Custom events source 选项时,这种临时执行是不适用的。

...

在图形化视图中,单击事件以查看消息详细信息。

Info
title如果没有看到图形化视图

默认情况下,如果你有独立的 SOAtest(相对于插件),或者你的 默认情况下,如果您有独立的 SOAtest(相对于插件),或者您的 Eclipse 安装了 Eclipse GEF,那么图形化视图是可用的。你可以从 httpGEF,那么图形化视图是可用的。您可以从 http://www.eclipse.org/gef/ 中下载并安装 Eclipse GEF。

使用数据源

事件监视器本身不能用数据源参数化。但如果测试套件中的测试,包括事件监视器可参数化的工具,它将开始监控之前第一次真正的测试(事件监视器后测试)和第一数据源行执行时,它将停止监控当所有数据源行已经被使用。这确保你将获得一个单一的、无缝的事件日志,而不管测试如何在测试套件中迭代。事件监视器本身不能用数据源参数化。但如果测试套件中的测试,包括事件监视器可参数化的工具,它将开始监控之前第一次真正的测试(事件监视器后测试)和第一数据源行执行时,它将停止监控当所有数据源行已经被使用。这确保您将获得一个单一的、无缝的事件日志,而不管测试如何在测试套件中迭代。

从其他平台检索事件

事件监控工具具有可扩展性挂钩,该挂钩允许此工具从各种来源获取事件,而不只是它所支持的内置平台和系统。有关更多详情,请查阅 可扩展性 API 模式 。

...

如果事务正确执行,则可以为所监视的消息添加回归控件,如 配置回归测试中所述。此外,你还可以添加验证,如 中所述。此外,您还可以添加验证,如 添加测试输出中所述。 验证工具中列出了可用的验证工具。

你还可以在事务执行时监视系统(例如,从 您还可以在事务执行时监视系统(例如,从 Web 接口触发事务),然后从这些消息自动生成测试。这包括了用于事务入口/出口点的测试,以及对事务中间部分的测试。通过这种方式,你可以快速地重现问题,快速地创建具有真实值的测试,然后隔离系统,并围绕事务的各个部分和组件创建回归测试。有关如何做到这一点的详细信息,请参阅出口点的测试,以及对事务中间部分的测试。通过这种方式,您可以快速地重现问题,快速地创建具有真实值的测试,然后隔离系统,并围绕事务的各个部分和组件创建回归测试。有关如何做到这一点的详细信息,请参阅