本主题说明如何为通过 Software AG webMethods 代理传输的事件配置监控。此监控需要管理客户端组特权。章节目录:
向 SOAtest classpath 添加所需的 Jar 文件
需要将以下 jar 文件添加到 SOAtest classpath 中:
- wmbrokerclient.jar
- g11nutils.jar
这些 jar 文件可以在 <WEBMETHODS INSTALLATION DIR>/Broker/lib/
下找到。更多详情,请参阅 webMethods Broker Client Java API Programmer's Guide> Getting Started> Using the webMethods Broker Java API。
将这些 jar 文件添加到 SOAtest 的 classpath 中:
- 前往 Parasoft > 首选项。
- 打开 Parasoft> 系统属性页面。
- 点击添加 JARs 并找到要添加的 JAR 文件。
配置事件监控器
- 双击事件监控工具,打开工具配置面板。
- 点击事件源选项卡并配置以下设置。
- 从平台下拉菜单选择 Software AG webMethods Broker。根据需要调整配置字段值。字段与 webMethods 工具中使用的字段相同,如 webMethods 中所述。
使用过滤器和通配符
事件监控器使用 BrokerAdminClient 来监控事件。默认情况下,它订阅“admin”客户端组。因此,如果希望根据事件的内容筛选事件,应该将客户端组值更改为允许订阅常规事件类型(而不是跟踪)的值。这是因为在使用 Broker::Trace::* events
时,过滤器字符串将应用于跟踪代理事件中的字段,而不是它们所表示的原始事件。
在完成事件类型字段时,请记住,根据 WebMethods Broker Client Java API Programmer's Guide,不允许对 Broker::Trace 或 Broker::Activity 事件类型使用通配符。如果希望监控一组事件类型,请指定允许订阅访问所需事件类型的客户端组名称(可能不是默认的“admin”客户端组设置),然后使用通配符提供事件类型。例如,您可以使用 Sample::*
还可以在字符串中使用 ${data bank column name}
变量。SOAtest 将用数据库值替换它,以便过滤器字符串可以基于其他测试的输出具有动态值。
有关过滤器和在事件类型名称中使用通配符的详细信息,请参阅 WebMethods Broker Client Java API Programmer's Guide。
配置事件监控选项
每次事件监控器执行前清除事件查看器 | 启用此选项,可在事件监控器启动监控时自动清除事件监控器事件视图(包括文本和图形)。 |
---|---|
输出到链接工具的 XML 事件中包含测试执行事件 | 启用此选项,达到仅在事件查看器选项卡和 XML 输出显示中显示受监控的消息和事件。此选项还指示每次测试启动和完成的时间。如果您在测试套件中有多个测试,并且希望更好地识别事件并将它们与您的测试执行关联起来,那么启用该选项非常有帮助。 |
使用 CDATA 包裹监控的消息以确保 XML 事件输出格式标准化 | 如果您不希望被监控事件的消息内容是格式良好的 XML,则启用此选项。禁用此选项将使事件中的消息可以通过 XPath 访问,从而允许 XML 转换器提取消息内容或使用 XML 断言器工具进行验证。 如果消息内容不是 XML,则启用此选项。这确保了事件监控工具的 XML 输出(即,用于将链接工具链接到事件监控的 XML 事件输出(而不是事件查看器下显示的内容)是格式良好的 XML,它转义了所有消息内容。这将使 XPath 无法访问这些消息的内容,因为从技术上讲,消息只是父元素的字符串内容。 比较工具的 XML 模式支持 XML 字符串内容。因此,比较工具仍然能够将消息区分为 XML 格式,包括使用 XPath 忽略值的功能,即使禁用了该选项。 |
等待监控器启动的最大时间 (毫秒) | 指定在 SOAtest 运行套件中的其他测试之前,事件监控器应该等待连接到事件源的最大时间长度。这使 SOAtest 能够为这些测试捕获事件,并防止在事件监控器连接到它的事件源时过度阻塞其他测试的执行。如果连接到事件源花费的时间超过默认值,则增加该值。默认为 3000 。 |
监控器最大执行时间 (毫秒) | 指定测试应该超时的点。例如,如果测试套件中的另一个测试挂起,或者没有运行其他测试(例如,如果您在测试套件之外执行事件监控测试,那么使用自定义应用程序向系统发送消息)。 |
每次测试结束执行后事件查询延迟时间 (毫秒) | 此字段不适用于 Software AG webMethods Broker。 |
支持的事件类型
使用管理客户端组权限,事件监控工具可以订阅以下事件类型:
- Broker::Ping
- Adapter::ack
- Adapter::adapter
- Adapter::error
- Adapter::errorNotify
- Adapter::refresh
- Broker::Trace::Publish
- Broker::Trace::Enqueue
- Broker::Trace::Drop
- Broker::Trace::Receive
- Broker::Trace::PublishRemote
- Broker::Trace::EnqueueRemote
- Broker::Trace::ReceiveRemote
- Broker::Activity::TerritoryChange
- Broker::Activity::ClientChange,
- Broker::Activity::ClientGroupChange
- Broker::Activity::EventTypeChange
- Broker::Trace::Insert
- Broker::Trace::Delete
- Broker::Trace::Peek
- Broker::Trace::DropRemote
- Broker::Trace::Modify
- Broker::Activity::ClientSubscriptionChange
- Broker::Activity::RemoteSubscriptionChange
注意,您还可以配置 webMethods 工具(如 webMethods中所述)来订阅所需的事件类型。唯一的区别是使用 webMethods 工具时,您需要提供特定的事件类型名称。