本文主要是介绍WireMock与契约测试学习笔记:磕磕绊绊mock测试初体验,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
环境
MacBook pro
Intellij IDEA 2019.2
java 8
前言
我负责的一个项目呢,契约测试曾经调通过一次,
但是最近CI
报了mockTest
任务执行异常。。。
自此,开始了我的两天磕磕碰碰的旅程。
可以说我对WireMock
是一点知识储备都没有,这两天就是参照公司的其他项目各种对比,然后不断调试,现在想想真是浪费了很多时间,因为当知道原因后,真的菜啊~
错误
当时我一直卡在如下的错误中:
上面的错误提示:
左边提示是最接近mock
要求的接口。(最符合请求要求的接口)
右边执行的接口测试。
进一步的错误信息是:
也就是报了一个请求404错误。
我当时一直很纳闷,为什么会找不到请求;一开始我以为是上图中左边那个接口,所以我还把那个接口的契约测试删除了。
上图的情况就是:
contract
包下的测试任务执行正常;
mock
包下的测试任务执行异常;
我执行测试任务都是单个执行的。
说明下:
mock test 只是把 contract test 拷贝过去,执行stub
也就是 stub 没有这个接口
虽然知道了stub
里面没有这个接口,但是怎么更新stub
呢?
问了很多同事,都没有给出有效的解决办法;
公司里有大佬,但是人家很久没弄契约测试或Mock
测试了。
他也忘了怎么去更新。
解决办法
思路:stub没有这个接口
关键怎么更新stub
呢?
更新stub
:
执行mockTest
的任务,可以在Intellij IDEA
中双击执行。
也可以在命令行中执行:
./gradlew :api:mockTest
之后执行结果:
总结
公司的mock
测试,是将契约测试进行拷贝后在到mock
环境执行的。
自己对mock
测试很多的不懂呀~
这篇关于WireMock与契约测试学习笔记:磕磕绊绊mock测试初体验的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!