尝试测试基于socket.io技术的程序,我尝试创建“ exec”块的序列,其中包含“ sendText”功能并进行答案验证。
.exec(
ws("write first number")
.sendText("""424["/answer/Session", {"message":"message text"}]""")
.await(30 seconds)( ws.checkTextMessage("server answer")
.check(
regex("""server answer text""")))
)
但是加特林无法根据我的参数来获取答案。它还忽略传出和传入消息的代码号以选择答案。它选择一些似乎匹配的传入消息,然后根据我的参数进行验证并给出错误。
对于单线程,可以通过对每个传入消息进行几次验证来解决该问题,这似乎与加特林匹配。喜欢
.exec(
ws("write first number")
.sendText("""424["/answer/Session", {"message":"message text"}]""")
.await(30 seconds)( ws.checkTextMessage("server question was answered")
.check(
regex("""answered""")))
.await(30 seconds)( ws.checkTextMessage("answer was displayed")
.check(
regex(""""data":"message text"""")))
.await(30 seconds)( ws.checkTextMessage("receive success status")
.check(
regex(""""success":true""")))
.await(30 seconds)( ws.checkTextMessage("server answer")
.check(
regex("""server answer text""")))
直到我得到必要的服务器答案。
但是当我尝试将线程数至少增加到50时,多次检查就成了问题。有什么方法可以更精确地指定要验证的消息吗?