在使用metersphere的过程中遇到一个大坑,过程中看不出任何异常,但是一执行就报错而且看不出任何问题。
现象如下:
在发送post请求时,一直报错“消息体参数类型不匹配”,但是这个消息体你放到postman中执行又是正常的。这就非常奇怪,如果你把metersphere两个地方消息体复制出来进行对比,就会发现不同了。
一处是我们赋值请求体里面的:
一处是metersphere发送请求打印出来的:
从这两幅图大家基本就可以看出问题所在了,转义符少了。
解决办法就是:将消息体转义符再加一层,变成:
这时metersphere再发出的请求就是正常的正则表达了:
结论:
我们在向metersphere 中粘贴消息体时,如果包含转义符,一般出现在正则表达式中,就不能无脑粘贴,需要将转义符再转换一遍(前面加 //)就正常了。如果大家也是按照上面思路解决的问题,那就快一些,如果没想到上面的思路,这个问题估计要解决很久也找不到原因,分享出来避免大家后续踩坑,如果还有其他问题,后面继续分享。