• 4
  • 6
分享

  1.接口测试:针对软件对外提供服务的接口的输入输出进行测试,以及接口间相互逻辑的测试,验证接口功能与接口描述文档的一致性。

  2.接口测试流程:

   1)获取接口信息:通过接口文档或抓包来获取接口的基本调用方式和返回,抓包可以通过fiddler、charles或者chrome的开发者工具等

   2)接口测试用例设计:根据获取到的接口信息,按照接口测试用例设计方法,设计参数和预期返回结果

   3)接口发包:使用工具或者编程向接口传递参数

   4)返回信息验证:获取接口返回的结果,进行解析和验证

  3.测试某网站的接口,包括:鉴权、登录和注销

   1)鉴权接口url:http://www.XXX.com.cn/XXX/HTTP//auth   POST

   过程:发送请求,获取token值->在全局变量中添加token变量名->在Tests中写脚本设置token的值。

C1.png

   2)登录接口url:http://www.XXX.com.cn/XXX/HTTP//login  POST

   过程:执行完步骤1)->在登录接口的Headers中设置token变量值->发送请求。

C2.png

   3)注销接口url:http://www.XXX.com.cn/XXX/HTTP//logout  POST

    过程:执行完步骤1)和2)后->在Headers里设置token的值。

C3.png

   4)token机制:

   C4.png

  4.常用断言:Status code、Response body:contains string和json value

   1)//pm表示postman,test相当于用例,"Status code is 200"相当于用例名称,function代表方法,function里的常量可随意修改成预期结果:

pm.test("Status code is 200", function () {
      pm.response.to.have.status(200);
  });
   
  pm.test("Body matches string", function () {
      pm.expect(pm.response.text()).to.include("验证码错误");
  });
   
  pm.test("json中message的值是:验证码错误", function () {
      //创建一个变量存储返回结果中的json值
  var jsonData = pm.response.json();
  //用console调试
  console.log(jsonData.message);
      //把value改为message,值改为"验证码错误"
      pm.expect(jsonData.message).to.eql("验证码错误");
  });

      2)编写断言脚本时,若不确定某些取到的值,可以用console调试,通过console.log()输出到postman的控制台中:

C5.png



作者:changyixue

来源:https://blog.csdn.net/changyixue/article/details/89496518

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   技术背景  需要有一定的python基础,代码阅读能力;以及自动化测试思想。  去到任何一家企业,如果少不了自动化,必然会要搭建一套自动化测试框架!  那么问题随之而来,这框架如何选择呢?  如果是代码能力强,可以自行开发与设计,那要是不呢?KPI摆在那,总不能说不行吧!  不行,代表着真的不行,在测试职业领域真的没有什么测试的不行!作者回顾以往工作经历,测试从来没有说过不字。  不会安全测试,但总得会几样安全型测试工具吧,不济也该知道安全测试的目的和原理吧。  不会性能测试,但总得会使用工具吧,理解性能测试指标和知道如何设计性能测试场景吧。  不会单元测试,不会自动化测试?不会渗透测试?...
            0 0 710
            分享
          • 1、页面链接检查:每一个链接是否都有对应的页面,并且页面之间切换正确。可以使用一些工具,如LinkBotPro、File-AIDCS、HTMLLinkValidater、Xenu等工具。LinkBotPro不支持中文,中文字符显示为乱码;HTMLLinkValidater只能测试以Html或者htm结尾的网页链接;Xenu无需安装,支持asp、do、jsp等结尾的网页,xenu测试链接包括内部链接和外部链接,在使用的时候应该注意,同时能够生成html格式的测试报告。如果系统用QTP进行自动化测试,也可以使用QTP的页面检查点检查链接。2、相关性检查:功能相关性:删除/增加一项会不会对其他项产生...
            12 12 852
            分享
          • 一、问答题1、自动化代码中,用到了哪些设计模式?答:自动化代码用到过的设计模式:①单例设计模式;②工厂模式;③PO设计模式;④数据驱动模式;⑤面向接口编程设计模式。2、什么是Selenium答:Selenium是一个开源的web自动化测试框架,支持多种编程语言开发自动化测试脚本,支持跨浏览器平台进行测试。3、TestNG中注解有哪些?答:@Test,@BeforeSuite,@AfterSuite,@BeforeTest,@AfterTest,@BeforeClass,@AfterClass,@BeforeMethod,@AfterMethod,@DataProvider。4、什么是断言?答:...
            0 0 1201
            分享
          •   测试用例老话说的好,工欲善其事,必先利其器。测试管理是把测试过程作为一个系统,对组成这个系统的各个过程加以识别和管理,以实现设定的系统目标。同时要使这些过程协同作用、互相促进,从而使它们的总体作用大于各过程作用之和。其主要目的是在设定的条件限制下,尽可能发现和排除产品缺陷。  而对于开发团队来说,有很多工作需要做好,测试管理不仅可以使产品实现这些效果,还可以使它们超越自我,达到最佳。而且,测试管理有助于产品通过利用数据促进交付。测试用例和测试数据可以轻松关联,并分析各种结果。测试管理对于帮助开发团队进步并不断满足用户需求是至关重要的。  测试数据管理也能够使研发机构去评估测试数据成功与否的...
            0 0 1009
            分享
          • 8月16日消息,谷歌面向 Pixel 手机推出 Android 13 正式版。此次 Android 更新进一步增强 Android 12 中引入的 Material You 主题,改进了现有的隐私控制,并引入了在支持的 Android 设备复制和粘贴的功能。通过个性化,谷歌引入了自定义非 Google 应用程序以匹配已设置的主题和颜色的功能,使用户设计的 Material 在智能手机中更具凝聚力。它还包含基于每个应用程序语言设置的更新,并提供更新的媒体播放器和就寝模式。出于隐私考虑,谷歌添加了更精细的权限设置,允许用户仅共享特定的照片和视频,而不是授予对媒体库的完全访问权限。Android 1...
            0 0 836
            分享
      • 51testing软件测试圈微信