为视频捕获表示开始和完成

有关可用 Java 类和方法的完整详细信息,请参阅 Javadoc。如果链接无效,请单击 Silk Central 菜单中的帮助 > 文档 > Silk Central API 规范以打开 Javadoc。

当为 Silk Central 创建新的第三方测试插件时,如果第三方测试类型支持在单个测试执行中处理多个测试用例,且您要将捕获的视频关联到特定测试用例,则可按两种方式进行操作。

插件中运行的第三方测试

对于这些测试,建议使用 TestLaunchResultDrain 类的 indicateTestStartindicateTestStop 方法。

外部进程中运行的第三方测试

对于这些测试,可使用基于 TCP/IP 的服务向 Silk Central 执行服务器的端口发送 STARTFINISH 消息。要使用的端口号可通过插件中的 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 类的 indicateTestStartindicateTestStop 方法。