好久没有写学习的总结,都正月十二了,但还是要来个新年快乐鸭。

   一直都在看imooc的一套java接口自动化实战课程,现在看到了尾部了,然后想到之前那些testng,mock,httpclient等都没有做小结,所以就还是怕会学了看过了,没有实战就忘记了。。。

简介

   mock测试就是在测试过程中,对于某些不容易构造或者不容易获取的对象,用一个虚拟的对象来创建以便测试的测试方法,这个虚拟的对象就是mock对象。mock对象就是真实对象在调试期间的代替品。mock用来模拟接口的,课程中学习mock用的是moco框架,moco框架是github上的一个开源项目,可以模拟一些http,https,Socket协议。

  实际使用场景

  比如项目开发中,前后台分离,如果后台接口还没有开发完,前端需要调用后台的接口来进行调试,此时就可以使用moco来模拟自己想要的接口和数据。

  启动

  moco框架是github上的一个开源项目,可以把这个项目源码拿下来使用 gradle编译为一个jar,也可以网上直接找 jar 包下载。这里提供一个jar的下载 地址:https://repo1.maven.org/maven2/com/github/dreamhead/moco-runner/0.11.0/moco-runner-0.11.0-standalone.jar 里面也有很多个版本,选择最大的那个包即可。

  启动的命令:java -jar moco-runner-0.11.0-standalone.jar  [协议类型] -p [端口号] -c [json配置文件]

  demo示例:

  新建一个文件夹后,直接将moco框架的jar包丢进去,然后就可以直接创建json文件,如demo.json

  执行->命令行->cd Chapter7->java -jar moco-runner-0.11.0-standalone.jar http -p 8899 -c demo.json

  

  

  执行成功,然后之前在浏览器打开,http://localhost:8899/demo

  

  demo.json

  

  *执行过后,浏览器会因为编码问题出现乱码,所以在response块加上headers信息,可以保证执行后中文不出现乱码的情况。

  上面是个demo  之后又结合cookie进行了练习

  带cookie的请求(get&post)

  GET

  

  POST

  

  *post请求的接口一般是在第三方的接口工具中执行,如postman和jmeter。

   如图,输入url后,选择请求方式,然后输入参数,注意选择参数文本形式,如图是json类型。

   还有cookie,这是携带cookie发起的请求,所以还需要配好cookie再访问。

最后点击send,发起请求得到相应结果。

  

  

  moco还有带headers,redirect重定向的一些方法,课程中最主要的还是讲了几个get,post,cookie例子。

   贴上重定向redirect的demo

   

  ①访问第一个http://localhost:8899/redirect,页面就会跳转到百度

   ②访问http://localhost:8899/topath,就会跳转到我们自己定义的网页myhome上面~

  That's all lalalalalalalala~~~

  实战中学到关于mock这块的就是这些了,好的,我又荒废了这个周末T T

  

  

  

  

  

接口自动化学习--mock的更多相关文章

  1. 接口自动化学习--testNG

    一个月一更的节奏~ testNg是一个开源的自动化测试框架..具体那些什么特点的就不想打了- -,贴张图(虽然也看不懂): 学习网站:https://www.yiibai.com/testng 一样是 ...

  2. 【接口自动化】mock

    mock测试就是在测试过程中,对于某些不容易构造或者不容易获取的对象,用一个虚拟的对象来创建以便测试的测试方法. 1.在测试接口时使用mock #from unittest import mock d ...

  3. MOOC(7)- case依赖、读取json配置文件进行多个接口请求-学习mock(7)

    学习mock # learn_mock_7.py # 单元测试结合mock思路 import unittest from mock import mock from day_20200208_mooc ...

  4. JMeter接口自动化学习笔记(一)

    实例教程:https://blog.csdn.net/kasijia/article/details/79405815 https://www.cnblogs.com/rd-ddddd/p/95782 ...

  5. 华为测试大牛Python+Django接口自动化怎么写的?

    有人喜欢创造世界,他们做了开发者:有的人喜欢开发者,他们做了测试员.什么是软件测试?软件测试就是一场本该在用户面前发生的灾难提前在自己面前发生了,这会让他们生出一种救世主的感觉,拯救了用户,也就拯救者 ...

  6. jmeter接口自动化和性能学习目录

     目录黑色代表未完成的,绿色代表已完成的文章.目录的作用的为了引导和总结自己的学习,也是为了更好的分享给大家. 一.接口自动化 jmeter解决登录token获取 jmeter五种提取器 之 正则表达 ...

  7. python学习笔记(接口自动化框架 V2.0)

    这个是根据上次框架版本进行的优化 用python获取excel文件中测试用例数据 通过requets测试接口.并使用正则表达式验证响应信息内容 生成xml文件测试报告 版本更新内容: 1. 整理了Cr ...

  8. Pytest学习(六) - conftest.py结合接口自动化的举例使用

    一.conftest.py作用 可以理解成存放fixture的配置文件 二.conftest.py配置fixture注意事项 pytest会默认读取conftest.py里面的所有fixture co ...

  9. ython学习笔记(接口自动化框架 V2.0)

    这个是根据上次框架版本进行的优化 用python获取excel文件中测试用例数据 通过requets测试接口.并使用正则表达式验证响应信息内容 生成xml文件测试报告 版本更新内容: 1. 整理了Cr ...

随机推荐

  1. 【目录】利用Python进行数据分析(第2版)

    第一章 准备工作 1.1 What Is This Book About(这本书是关于什么的) 1.2 Why Python for Data Analysis?(为什么使用Python做数据分析) ...

  2. SharePoint 改动passwordWeb Part部署方案

    版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/u012025054/article/details/31773231 SharePoint 改动pa ...

  3. Java多线程和并发基础面试总结

    多线程和并发问题是Java技术面试中面试官比较喜欢问的问题之一.在这里,从面试的角度列出了大部分重要的问题,但是你仍然应该牢固的掌握Java多线程基础知识来对应日后碰到的问题.收藏起来,希望给予即将找 ...

  4. [原创]C/C++语言中,如何在main.c或main.cpp中调用另一个.c文件

    C/C++语言中,如何在main.cpp中调用另一个.c文件主要有5种思路: 1.在VS2012 IDE中,将被引用的.c文件后缀名全部修改为.h,然后通过IDE的解决方案资源管理器中鼠标右键单击“头 ...

  5. Mysql安装(win10 64位)

    公司的测试数据库只有读的权限,而且还不能用IP和端口去访问,所有很多时候不方便(尤其是想练手的时候).闲着也是闲着,自己搭建一个Mysql数据库出来.以下操作,全部基于win10专业版 64位,仅供参 ...

  6. Linux 查看网卡流量的几个方法

    1. sar -n DEV 1 2   (命令后面1 2 意思是:每一秒钟取1次值,取2次.) 2. cat /proc/net/dev 3. iftop 4. ifstat 5. nload 6.  ...

  7. POJ 2250 (LCS,经典输出LCS序列 dfs)

    题目链接: http://poj.org/problem?id=2250 Compromise Time Limit: 1000MS   Memory Limit: 65536K Total Subm ...

  8. 视频直播时的QoS策略

    一.如何判断当前的网络状况 可以以发送一帧视频数据的时间为依据,判断当前网络拥塞情况.    网络中出现丢包和抖动,导致接收端接收数据超时,会激发发送端数据重传,重传机制本身挤占网络带宽,导致send ...

  9. gattAttribute_t 含义 中文解释

    1.  gattAttribute_t   是一个结构体数据类型,里面存放了各种类型的数据. 现在 看看 TI  是怎么描述的,如下: /** * @brief GATT Attribute form ...

  10. OVF3为订单原因分配成本中心时报错“成本中心未定义”,消息号:VT806

    问题:OVF3为订单原因分配成本中心时报错“成本中心未定义”,消息号:VT806.KS03检查成本中心数据是已经建立的. 原因:OVF3往右边拉动,还有一个需要填入的字段“有效起始日”,此字段值必须在 ...