接口测试基础

目录

前言

一、接口四要素

二、请求方法

1、get请求

2、post请求


前言

测试过程中,经常会用到接口测试,无论是抓包工具,还是做接口自动化测试以及服务端的测试,都要掌握好接口测试的基础:请求的url,请求方法,传参,接口返回,最近在学习SpringBoot项目,以postman为接口测试工具,针对常见的请求get请求和post,以及在测接口时可能遇到的问题,做了些总结。

一、接口四要素

在做接口测试时,有关键四要素:请求url、请求方法、传递参数、接口返回参数。有时候接口调不通,首先检查下url是不是对的,其次检查请求方法,最后查看传递的参数类型是否符合要求。

如果请求的url地址出错,接口404,提示资源未找到。

如果请求方法出错,比如get请求方法,但写成了post,接口返回405,提示方法不允许。

二、请求方法

在工作中经常遇到的请求方法有四种:get、post、put、delete,比较常用到的就是get请求和post请求,主要看这两个方法是怎么调用的,怎么传递参数。

1、get请求

@GetMapping("/get")
    public String GetMethod (@RequestParam(required = true) int id,@RequestParam(required = false) String number){
        return "get方法中的id是:"+id+"\n"+"number是:"+number;}

如上代码所示,传参要求

id是必传的,类型为int

number是非必传的,类型为String 

先来看如果不传必传的参数,接口返回400,提示错误的请求。

客户端没有按照服务端的要求传必传的参数

 同样如果传递的参数类型不符合要求,接口也返回400

也属于客户端没有按照服务端的要求传必传的参数

客户端传了必传的参数名,但值为空,也返回400

也属于客户端传参不符合要求

对非必传的参数,如果没传,则默认为null,这里number的值没有传过去,则为null(如果参数名传错了,值也为null)

 但如果非必传参数传了,但值为空,结果就是空,而非null

2、post请求

这篇文章对post请求的请求体body的介绍非常详细。

http的请求体body的几种数据格式_http请求体_千篇不一律的博客-CSDN博客

@PostMapping("/post")
    public String PostMethod (@RequestParam(required = true) int id,@RequestParam(required = false)String desc){
        return "post方法中的id是:"+id+"\n"+"desc是:"+desc;
    }

示例接口如上,必传参数id,类型int,非必传参数desc,类型String。

 在必传参数传递错误,或传的值为空时,接口都返回400,与get请求一致。

post请求还可以传递json

@PostMapping("/postjson")
    public String PostMethodjson (@RequestBody String id){
        return "post方法中的json传参的json是"+id;
    }

当然还可以json+参数传参方式

json是必传参数,age是必传参数,类型为int,name为非必传参数,类型为String.

@PostMapping("/postjsondata")
    public String PostMethodjsondata (@RequestBody String id,@RequestParam(required = true) int age,@RequestParam(required = false) String name){
        return "post方法中的json传参的json是"+id+"name参数是"+name+"age参数是"+age;
    }

url上需要带上必传参数age 

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
在pytest中进行接口测试面试时,你可以参考以下几个方面: 1. 接口测试基础知识:了解接口测试的概念、目的和常见的接口测试类型。可以简要介绍接口测试的重要性以及为什么在软件测试过程中进行接口测试是必要的。 2. pytest框架:介绍pytest框架的优点以及如何使用pytest进行接口测试。你可以提及一些常用的pytest插件,例如pytest-html用于生成可视化的测试报告、pytest-xdist用于测试用例的分布执行等。这个公众号提供了涵盖了基础知识、工具使用、测试进阶等多个方面的学习资料和视频教程。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [python+pytest接口自动化-接口测试基础,http协议基础(一)](https://blog.csdn.net/csdnchengxi/article/details/125483266)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [pytest接口自动化测试框架入门(pytest+yaml)](https://blog.csdn.net/2301_77709772/article/details/131008635)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

MRJJ_9

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值