mock-针对restful接口,开发mock测试服务



mock-针对restful接口,开发mock测试服务


一、为什么使用mock测试
有了Mock,前、后端人员只需要定义好接口文档就可以开始并行工作,互不影响,只在最后的联调阶段往来密切;
后端与后端之间如果有接口耦合,也同样能被Mock解决;
测试过程中如果遇到依赖接口没有准备好,同样可以借助Mock;
不会出现一个团队等待另一个团队的情况。这样的话,开发自测阶段就可以及早开展,从而发现缺陷的时机也提前了,有利于整个产品质量以及进度的保证。


二、使用 nginx 解决,不同域名、端口 指向同一个mock站点问题
1.nginx 配置
    #转发 mock 请求(如果需要监听多个端口,需配置多个 server 节点)
    server {
        listen       80; #监听端口
        server_name  ""; #监听域名 “” 为80端口上所有域名


        location / {
            proxy_set_header Host $host:$server_port;  #mock时需要将此内容设置为客户端实际请求的“域名”和“端口号”
            proxy_set_header X-Forward-For $remote_addr;
            proxy_set_header X-Real-IP $remote_addr;  
            proxy_set_header xxx-test $host,xxx,111,222;  #自定义测试http 头信息
            proxy_pass http://localhost:8000/; #转发请求到以下地址
        }


        #error_page  404              /404.html;


        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }


2.nginx 常用命令
sudo nginx 启动nginx
sudo nginx -t 判断配置文件是否正确
sudo nginx -s stop 停止nginx:
sudo nginx -s reload 重启nginx:


三、返回mock试数据
不同待mock的服务地址,如:
http://www.aa.com/d/e/f
http://www.bb.com:8080/a/b/c
http://www.cc.com:9090/1/2/3

都可以通过 nginx 的配置进行转发。在 mock站点中可以得到请求的域名、端口、url地址等信息;


既然可以得到域名、端口、url,就可以很方便的拼接出一个绝对的 URL 地址,有了URL地址就可以确定对应的响应数据了;


至此,开发一个 mock 测试站点的可行性分析已经结束,东西不多但是作用很大。



  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值