有关可用 Java 类和方法的完整详细信息,请参阅 Javadoc。如果链接无效,请单击 Silk Central 菜单中的以打开 Javadoc。
当为 Silk Central 创建新的第三方测试插件时,如果第三方测试类型支持在单个测试执行中处理多个测试用例,且您要将捕获的视频关联到特定测试用例,则可按两种方式进行操作。
插件中运行的第三方测试
对于这些测试,建议使用 TestLaunchResultDrain 类的 indicateTestStart 和 indicateTestStop 方法。
外部进程中运行的第三方测试
对于这些测试,可使用基于 TCP/IP 的服务向
Silk Central 执行服务器的端口发送
START 和
FINISH 消息。要使用的端口号可通过插件中的
ExecutionContextInfo.ExecProperty#PORT_TESTCASE_START_FINISH 查询。如果插件扩展了
ExtProcessTestLaunchBean,则端口还能被用作称为
#sctm_portTestCaseStartFinish 的环境变量。这些消息类型将通知执行服务器,测试中的测试用例已开始或分别完成。消息必须以 Unicode (UTF8) 或 ASCII 格式编码。
- 消息类型
- 格式
- 开始
- START <Test Name>, <Test ID> <LF>,其中,LF 的 ASCII 代码为 10。
- 完成
- FINISH <Test Name>, <Test ID>, <Passed> LF,其中,LF 的 ASCII 代码为 10。Passed 可以是 True,也可以是 False。如果视频捕获设置为在出错时执行,当 Passed 设置为 False 时,视频将仅保存到结果。
如果请求被识别,执行服务器将会以确定作出响应,否则,执行服务器将会以错误消息作出响应。请始终等待执行服务器响应,然后再执行下一个测试用例,因为如果不按此操作,录制的视频可能与实际测试用例不匹配。
如果执行测试的外部进程基于 Java 环境,建议使用包括在文件 tm-testlaunchapi.jar 中的 TestCaseStartFinishSocketClient 类的 indicateTestStart 和 indicateTestStop 方法。