基于python的接口测试学习笔记一(初出茅庐)

时间:2022-01-28 09:29:50

第一次写博客笔记,讲一下近来学习的接口自动化测试。网上查阅了相关资料,最后决定使用python语言写接口测试,使用的是python的第三方库requests.虽然python本身标准库中的 urllib2 模块提供了你所需要的大多数 HTTP 功能。但requests更好用简单。果断入门学习。

新手入门,代码比较简单

import requests
import unittest
class apiTest(unittest.TestCase):
def setUp(self):
self.base_url='http://httpbin.org/get'
self.list={'key1':'value1','key2':'valus2'}
def tearDown(self):
pass
def test_api(self):
response=requests.get(self.base_url,params=self.list)
self.assertEqual(response.status_code,200) if __name__=='__main__':
unittest.main()

  首先,导入对应的requests模块,它是我们进行http请求等相关功能的关键,需要安装,在命令行输入

$ pip install requests

然后导入unittest框架,它是python的单元测试框架,相当于java的 junit框架。

apiTest继承自unittest.TestCase,是一个测试用例。重写了setUp()方法,用于环境初始化, 例如可以在setUp()中建立数据库连接以及进行一些初始化,在tearDown()中清除在数据库中产生的数据,然后关闭连接。这里在setUp()方法声明了变量,url和递交的参数。还定义了以test开头的方法,每一个以test开头的方法,都会为其构建TestCase对象。使用Requests来发送网络请求非常简单。一个get请求:response=requests.get(self.base_url,params=self.list),get方法中两个参数分别是URL和传递的参数。请求的url其实就是:http://httpbin.org/get?key2=value2&key1=value1 。后面加上个断言,用户判断响应是否与预期一致,这里是响应状态码是否等于200。