diffy的初使用

作者: 果果小姚 | 来源:发表于2020-05-25 10:38 被阅读0次

     产品上回归测试要用,领导安排去尝试了解下,最近项目也不忙,就开始吧,csdn上的博客diffy的大同小异,基本上就是一个,参考稍微有点价值,但实际自己用的过程中,还需要研究下,目前diffy版本比对结果暂时比较可观,整理下,便于参考。

一开始走的路子是从官网下载,然后从window上编译,都编译出错,没办法,改到linux编译。

windows下的报错

git clone https://github.com/opendiffy/diffy.git---linux下直接运行,没有git的话,先安装git,sudo yum install git

下载完成后,进入diffy里面就,执行./sbt assembly进行编译

下载完成后,进行编译

然后你会发现这个过程很慢 ,另,需要保证剩余内存>2G,才可以保证整个编译过程,在编译的过程中,去查看

vim ~/.sbt/repositories文件是否生成,修改里面的[repositories],添加如下内容:

[repositories]

local

my-maven-repo: http://maven.aliyun.com/nexus/content/groups/public/

central: http://repo1.maven.org/maven2/

修改配置文件

可以有效的进行提速,然后修改vim ./sbt,添加

-Dsbt.override.build.repos=true

修改配置文件

修改完成后,编译过程会加快

编译过程

编译完成后,显示以下界面

编译完成界面

网上只说了要发请求,准备待测版本和稳定版本之类的,这里要详细说下,编译完成的jar包在以下目录下。

编译后的目录

我这边是web端的产品,平常端口是28080,如果要进行测试,是通过对jar包所在机器进行发送请求,然后jar包所在的机器去把收到的请求转发给版本1,和版本2。也就是说,要先运行,将产品的地址先放上。

java -jar diffy-server.jar -candidate=10.6.6.68:28080 -master.primary=10.6.6.115:28080 -master.secondary=10.6.6.115:28080 -service.protocol=http -serviceName=My-Service -proxy.port=:8880 -admin.port=:8881 -http.port=:8888 -rootUrl='localhost:8888' -summary.email="guanyy@163.com" -allowHttpSideEffects=true

java -jar diffy-server.jar----jar包路径进行运行

-candidate=10.6.6.68:28080 ---要测试的版本,待部署上线的版本

 -master.primary=10.6.6.115:28080--已经部署的版本,稳定的版本

-master.secondary=10.6.6.115:28080--已经部署的版本,稳定的版本,这里暂且相同

service.protocol=http---协议http,还有其它的协议

-serviceName=My-Service--服务名称

 -proxy.port=:8880--后台输入请求的时候,需要往这个端口上发送

-http.port=:8888 -rootUrl='localhost:8888'---这个是jar包运行时,前端的访问地址,界面

-allowHttpSideEffects=true--用来接收除了读以外的其它请求

summary.email="guanyy@163.com"---邮箱

jar包执行过程

然后需新开一个窗口,进行请求的发送,我这边用了curl,在使用之前,需要去产品中,找到这个请求地址:

请求访问地址

开始准备发送请求,如果不知道怎么写,可以直接,右键进行查看,然后删减一部分即可,此处的调试办法,可以直接进行请求访问,如果访问结果,跟前端的一致,就是说明写对了。

url的查看 后台的访问

此时,可以进行服务的发送了,这里还出现了小插曲,因为产品的请求,可见的时cookie,但使用这个的话,每个版本的不一样,导致只能看到一个产品 的返回结果,另一个时登录那里就卡住了,如下图。这个时候,需要看下有没用用户不可见的,通用的使用,比如token,可以问下设计,然后找个共有的,一般数据库里面有备用的。

访问截图 请求的发送

然后去访问,8888端口,上图中的请求是通过jar包所在机器,进行请求转发的。

请求返回结果

在这个界面,去点击上角的,扩展,就能打开看两个版本的实际的返回结果了。

接口请求查看 详细的请求

点开去噪以后,就可以看到返回结果了。

去噪声

进行一次返回结果不一致的请求,当然,执行这种返回结果比对,需要保证两版本数据数量大小一致,才可以进行。

请求不一致的情况

打开去噪后,可以看到失败的百分比

失败的百分比

如果想清空当前界面的请求,需要进入设置界面,进行清空,界面的请求就会重新记录

进入设置 清空请求

如需要diffy-server.jar,请访问百度云下载,链接如下

链接:https://pan.baidu.com/s/1rdjRMZcuNJw-w9Se5hL8LQ

提取码:bnb1

暂时理解的是这样,有错误的地方,请指正。

相关文章

  • diffy的初使用

    产品上回归测试要用,领导安排去尝试了解下,最近项目也不忙,就开始吧,csdn上的博客diffy的大同小异,基本...

  • 结合diffy跑自动化

    在上篇帖子中是实现了单个请求的访问,但当请求数据过多时,单个执行未免太麻烦了,比如需要执行以下内容,另一个原因是...

  • diffy自动化脚本实现

    在上篇实现后,感觉jar包的执行过程还是比较繁琐,而且需要打开两个窗口才能进行,未免过于麻烦,脚本化后就好了。 如...

  • lucy的一点一滴3

    今天忙碌了一年,从早上9点一直到下午5点,去mr.price 买了文件袋,回家的路上碰到了diffy搬家,顺便帮她...

  • docker的初使用

    进官网 安装 卸载 创建docker专属用户 镜像的使用 下载镜像记录 运行镜像 仓库地址 https://hub...

  • Volley的初使用

    Volley的使用 首先得到Volley的源码,但是需要自己换时间去弄成jar包,或者使用AS的就作为依赖,所以我...

  • Git的使用(1)-初使用

    写这篇文章仅用于备忘。密钥生成部分不介绍。因为都是用的私人库,选择在码云使用。 一般是码云创建了项目仓库后,需要将...

  • Django初使用

    疑问: 1、语言:Java、C、C++、Python…..? 2、如何编写代码? 3、如何将数据展示在页面? 4、...

  • lodop初使用

    大致原理: 1.安装一个install_lodop.exe文件安装成功后会开启8000端口和18000端口(C:\...

  • MongoDB初使用

    1.mongodb安装 参考官方tutorials 2.mongodb管理 3.python操作mongodb 3...

网友评论

    本文标题:diffy的初使用

    本文链接:https://www.haomeiwen.com/subject/olveahtx.html