测试目的:
验证DUT(Device Under Test)能够检测到客户端在发送多播(Multicast)和单播(Unicast)时执行了重启。
描述
本测试用例旨在确保DUT能够区分客户端在多播和单播情况下的重启行为,并在客户端重启后重新发送初始事件。
测试拓扑:
具体步骤:
A:多播 - 测试
- TESTER:发送FindService (0x0101),Session-ID为0x0004
- DUT:可以用单播或多播提供响应服务消息
- TESTER:订阅DUT提供的ETS的事件组0x5,Session-ID为0x0004
- DUT:应向测试器发送SubscribeEventgroupAck。确认后,DUT应立即发送初始事件(通知InterfaceVersion字段:0x8005),因为有了新的订阅
- TESTER:发送第二个FindService (0x0101),Session-ID为0x0005。(步骤1后1秒)
- DUT:可以用单播或多播提供响应服务消息
- TESTER:订阅DUT提供的ETS的事件组0x5,Session-ID为0x0005
- DUT:应向测试器发送SubscribeEventgroupAck。第二次订阅后,DUT不允许再次发送初始事件
- TESTER:发送第三个FindService (0x0101),Session-ID为0x0001(客户端重启模拟)
- DUT:可以用单播或多播提供响应服务消息
- TESTER:订阅DUT提供的ETS的事件组0x5,Session-ID为0x0001
- DUT:应向测试器发送SubscribeEventgroupAck。预期DUT会再次发送初始事件,这意味着它已经检测到了客户端重启
B:单播 - 测试
13. TESTER:订阅DUT提供的ETS的事件组0x5,Session-ID为0x0004
14. DUT:应向测试器发送SubscribeEventgroupAck。确认后,DUT应立即发送初始事件(通知InterfaceVersion字段:0x8005),因为有了新的订阅
15. TESTER:向事件组0x5发送第二个订阅,Session-ID更高(0x0005)
16. DUT:应向测试器发送SubscribeEventgroupAck。第二次订阅后,DUT不允许再次发送初始事件
17. TESTER:向事件组0x5发送第三个订阅,Session-ID为0x0001(客户端重启模拟)
18. DUT:应向测试器发送SubscribeEventgroupAck。预期DUT会再次发送初始事件,这意味着它已经检测到了客户端重启
C:单播和多播 - 鲁棒性测试
19. 最后,为了查看DUT是否能够保持重启检测对多播(M)和单播(U)消息的分离,两种类型的消息都会交叉发送。由于每种类型的Session-ID总是递增的,但单播的比多播的低,因此没有实际的重启。如果DUT不能将它们分开,它会认为发生了重启,测试将失败。
通过标准
请参阅上述预期的DUT反应
参考文档:
- 无