python接口测试之测试用例封装与测试报告的生成

本文介绍了如何使用Python的unittest框架、BSTestRunner和requests模块进行接口测试。通过设计不同测试场景,编写测试用例,并实现测试报告的HTML输出。测试对象为一个天气预报接口,涉及异常处理,如No tests found、ImportError和断言时间戳对不上的问题。
摘要由CSDN通过智能技术生成

前言:

本文涉及到unittest单元测试框架、BSTestRunner扩展文件、requests模块、time等模块的应用,利用python语言实现以接口为测试对象,执行用例封装,通过BSTestRunner来输出测试报告的整体思想;

  • API信息:http://t.weather.sojson.com/api/weather/city/city_code
  • 本文测试api:http://t.weather.sojson.com/api/weather/city/101210101
  • 接口请求方式:get,接口入参:city_code

备注:文中涉及的API为又拍云提供的免费接口,尽量不要做性能方面的测试,请求量过大可能会导致ip被封;

 

一、测试用例设计

1、基本逻辑:

    a、设计不同的测试场景

    b、使用不同的断言判断是否与预期一致

    c、将所有的请求结果汇总以html形式输出测试报告

2、测试用例

场景

请求api

预期结果

正常入参

http://t.weather.sojson.com/api/weather/city/101210101

"status":“200”

异常入参

http://t.weather.sojson.com/api/weather/city/cdy

"status":“404”

参数缺省

http://t.weather.sojson.com/api/weather/city/

"status":“404”

三、代码实现

准备工作:pycharm中新建testcase文件夹,testcase文件夹下新建reports文件夹与test_wt.py文件

1、test_wt.py文件

导入需要的模块

# -*- coding: utf-8 -*-
import unittest   #引入unittest模块
import requests  #导入request库
import time     #time模块
from time import sleep
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值