接口测试 避免审核问题,我删除这个帖子了

huiyu · 2021年11月02日 · 最后由 huiyu 回复于 2021年11月05日 · 8621 次阅读

隐藏起来

共收到 9 条回复 时间 点赞

额,抱歉好久没关注这块了,你是想根据契约来生成一个符合规则的 json,用这个来做 mock 么?

是的, 根据契约来进 mock 数据,结构可控,数据也可控,还有一定的随机性,也能用来生成测试数据,辅助测试,

对 cool 回复

没想到,那么快就有回复, 根据契约来生成一个符合规则的 json ,然后 mock 或者就用来测接口报错什么的,都很方便, 然后就一直在查有没有 已有的方法, 我目前用递归写了一个 但还是有 bug 而且时间比较长,居然要 0.8 秒,昨天发完帖子就开写, 今天花了一整天了

对 huiyu 回复

我当时没有这样的使用场景,所以没加这块的功能;今年转别的方向了,这个也没太关注了;如果你有兴趣的话,写完可以提个 pr 过来

对 cool 回复

目前刚刚写了 json 契约的反写,5 个匹配类型,每个匹配类型都需要递归处理, 现在是多层嵌套的时候,如果是 [[[]]] 这样的还是存在问题,也有一些新 bug 还在测试中可能没暴露出来,因为还有参数问题的处理,想写出没 bug 的我感觉还得到周 5,不过已经很接近了, 原本以为 pact 包有类似的功能就不用重复造轮子了,

先递归 LIke 然后是 EachLike 然后到 Matcher-》Term-》Enum 顺序不能乱,不然就有问题, 然后我用生成的 json 和原来的契约做契约校验,看看能不能通过, 只能这样慢慢测试再优化代码了。没想出什么好办法。 领导要我做契约测试的平台, 给消费者提供 mock 功能, 给生产者校验数据, 参考了 pact-Python 和你写的 PactVerify,目前就差一点点了。 我的 okr 全靠这个了

现在麻烦的是 EachLike 那里,其他部分都很容易就写出了,今天再搞一天

8楼 已删除

好的,我看下

huiyu #10 · 2021年11月05日 Author
对 cool 回复

主贴那个, 8 楼的还有问题,主贴上的是最终版, 不知道怎么删 8 楼

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册。