课程名称
全能软件测试工程师
课程章节
接口自动化测试篇
课程讲师
大周
课程内容
接口测试
什么是接口?
- 硬件接口:通过某种约定,对其他设备进行接入,以实现设备与设备之间的交互
- 软件接口:网络协议(HTTP\HTTPS\TCP\UDP协议)
接口测试的方法
-
根据接口协议,结合接口参数进行测试用例设计与执行
-
从接口返回数据验证,侧重验证返回数据的准确性
HTTP协议的常用接口请求方法
- get请求:通过url来向接口传递数据的请求方式,适合传递数据量小,保密性低的数据
- post请求:通过请求体的方式向接口传递数据的请求方式,适合数据量大或保密性高的数据
- head请求
- put请求
- delete请求
- connect请求
- options请求
- trace请求
接口测试流程介入时机不同
Flask Web框架
Flask框架:轻量级的Web开发框架(不限于Web,只要符合HTTP协议即可进行调用)
特点:
- 自由、灵活
- 更容易上手
安装Flask
pip install Flask
Get和Post
- Get
from flask import Flask,request
app = Flask(__name__)
@app.route("/")
def hello_world():
return "hello world qqqqqqq"
@app.route("/hello")
def hello_world2():
return "hello22222"
@app.route("/hello/<username>")
def hello_world3(username):
print(username)
return "hello22222" + username
@app.route("/hello/args/<username>")
def hello_world4(username):
print(username)
key = request.args.get("key")
value = request.args.get("value")
return "hello22222" + username + "::::" + key+ "::::" + value
if __name__ == "__main__":
app.run()
- Post
from flask import Flask,request
app = Flask(__name__)
@app.route("/mypost", methods=["post"])
def my_post():
return "post request"
@app.route("/mypost1", methods=["post"])
def my_post1():
# 表单数据类型
username = request.form["username"]
sex = request.form["sex"]
print(username)
print(sex)
return "post request" + username + "::" +sex
@app.route("/mypost1", methods=["post"])
def my_post2():
# json数据格式
request_data = request.get_json()
print(request_data)
print(request_data["user"])
return "post request" + str(request_data)
if __name__ == "__main__":
app.run(port=5555)
- Flask + pyMySQL
import pymysql
from flask import Flask
# 这里是mysql的基本连接信息
conn = pymysql.connect(
host="192.168.1.116",
user="root",
password="123",
database="mydb1",
charset="utf8"
)
cursor = conn.cursor()
app = Flask(__name__)
@app.route("/")
def hello_world():
sql = "select * from school"
result = cursor.execute(sql)
# 得到查询后的真正的结果
r = cursor.fetchall()
print(r)
return str(r)
if __name__ == "__main__":
app.run()
Post man工具
- 发送Get请求
- 发送Post请求:key-value方式
- 发送Post请求:JSON方式
课程收获
今天学习了什么是接口测试(下来要补一补HTTP相关的知识),初步接触了一下Flask Web框架(学习了get和post这两个HTTP请求)和PostMan工具(对于get和post请求的测试方法),对于接口测试算是破冰了,下面将跟随老师的讲解进行接口测试实战,积累更多的实战技巧。