本示例说明了如何通过添加断点来调试定制代码。它提供了用于添加断点的样本代码。这种调试定制代码的方法仅适用于调度。
过程
- 启动 IBM® Rational® Performance Tester 并创建性能测试项目 MyProject。
- 通过记录对 http://<hostname>:7080/ 的访问来创建 HTTP 测试 MyTest。
注: 访问此 URL 之前,请确保 Rational Performance Tester 正在运行。此 URL 将返回 HTTP 404 错误,这符合预期。
- 展开第一个请求并单击响应元素。
- 在“测试元素详细信息”部分中,在内容字段中进行右键单击,然后单击创建字段引用。
- 输入引用名称并单击确定。
- 单击第一个页面,然后单击。
- 在“测试元素详细信息”的参数部分中,单击添加。
- 展开搜索结果页面的数据源,选择已在步骤 5 中创建的引用名称,然后单击选择。
- 单击生成代码。 将显示具有所生成代码的新选项卡。
- 将以下代码插入 exec() 方法:
ITestLogManager history = tes.getTestLogManager();
if (args.length > 0) {
if (args[0].indexOf("Invester Relations") != -1) {
history.reportMessage("First page failed. Bail loop!");
tes.getLoopControl().continueLoop();
}
}
要点: - 修正双引号(如果有),以使它们成为直双引号并且使编译器不再给出警告。
- 要解决与导入类相关的编译器警告,请按 Ctrl
+ Shift + O。
代码将看起来像:
- 要插入断点,请在 args[0].indexOf 行上任意位置进行单击。
将指针移至文本编辑器窗口最左边的部分,并当指针在此同一行上处于水平位置时进行双击。窗口的此最左边部分内将显示一个蓝色按钮,指示断点已设置。
- 保存定制代码,然后保存测试。
- 创建新调度 Schtest。
- 在 Schtest 中,将要运行的用户数设置为 1。
- 单击用户组 1 并单击。
选择 MyTest 测试并单击确定。
- 单击用户组 1 并单击在以下位置运行该组按钮。
- 单击。
- 在“新位置”窗口中,输入以下信息:
- 在主机名中,输入 localhost。
- 在名称中,输入 debuglocation。
- 在部署目录中,输入 C:\mydeploy。
- 单击完成。
- 保存调度。
- 在“测试导航器”中,右键单击 debuglocation 并单击打开。
- 单击常用属性选项卡并单击添加。
- 在属性名称字段中,输入 RPT_VMARGS,并在属性值字段中,添加以下值(每个值都用空格隔开)。
-Xdebug
-Xnoagent
-Djava.compiler=NONE
-Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
- 保存位置。
- 将调试器附加到调度执行过程。
- 运行调度。 因为调度要使用 debuglocation,所以将在开始时暂停以使您能够将调试器附加到执行过程。
- 单击。
- 单击。
- 在“调试配置”窗口中,右键单击远程 Java 应用程序并单击新建。
- 单击调试。 正在运行的线程的列表将显示在“调试”窗口中,而调度执行将在调试断点处暂停。
- 如果您是首次执行该操作,那么可能需要提供源位置才能查看定制 Java 代码。请通过执行以下步骤来执行该操作:
- 单击编辑源查找路径并单击添加。
- 单击。
- 现在,展开 MyProject,选择 src 文件夹,然后单击确定。
调度运行将在指定断点处停止。