网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

使用DjangoAdmin+HttpRunner实现一个接口测试功能-创新互联

今天就跟大家聊聊有关使用Django Admin+HttpRunner实现一个接口测试功能,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

成都创新互联主营施甸网站建设的网络公司,主营网站建设方案,手机APP定制开发,施甸h5重庆小程序开发搭建,施甸网站营销推广欢迎施甸等地区企业咨询

前言

这是一个使用HttpRunner开发接口平台的简单Demo。

新建Django项目

使用Django Admin+HttpRunner实现一个接口测试功能

安装依赖包

使用Django Admin+HttpRunner实现一个接口测试功能

pip install httprunner=1.5.6 -i https://pypi.doubanio.com/simple/


模型规划


  • 项目Project:包含 名称、创建时间、修改时间
  • 测试套件TestSuite:对应HttpRunner的一个yaml文件,包含所属项目、name、base_url、request请求配置、variables用户自定义变量、创建时间、修改时间
  • 测试用例TestCase:对应HttpRunner中的一个test段,包含所属TestSuite、name、skip、request、validate、extract、创建时间、修改时间
  • 测试结果TestResult:测试套件运行的一次结果信息,包含所属TestSuite、HttpRunner运行summary中的时间信息、统计信息、平台信息、详情等

自定义YamlField


由于TestSuite中的request、variables以及用例中的request我们需要使用Python的字典格式,用例中的validate和extract需要使用Python的列表格式。而Django中这些只能按字符串格式TextField存储。


我们编写一个自定义YamlField,存库时按字符串存,读取时转为Python字典或列表。


在apitest目录下新建fields.py,内容如下。

串存,读取时转为Python字典或列表。
在apitest目录下新建fields.py,内容如下。

import yaml
from django.db import models

class YamlField(models.TextField):
  def to_python(self, value): # 将数据库内容转为python对象时调用
    if not value:
      value = {}
    if isinstance(value, (list, dict)):
      return value
    return yaml.safe_load(value)

  def get_prep_value(self, value): # create时插入数据, 转为字符串存储
    return value if value is None else yaml.dump(value, default_flow_style=False)

  def from_db_value(self, value, expression, connection): # 从数据库读取字段是调用
    return self.to_python(value)

本文标题:使用DjangoAdmin+HttpRunner实现一个接口测试功能-创新互联
本文来源:http://bjjierui.cn/article/phdig.html

其他资讯