测开之路六十:接口测试平台之common目录
实现接口测试平台使用jsonpath进行取值来断言,效果:
访问页面:
调试功能:http://www.kuaidi100.com/query
保存功能
触发执行功能
查看报告功能
目录结构
common的代码:
init:
import time
import uuid def get_timestamp(data=None):
""" 生成字符串格式的时间戳数据 20190704204826 """
if data:
return time.strftime("%Y%m%d%H%M%S", time.localtime(data)) # 把传进来的时间格式化为字符串
else:
return time.strftime("%Y%m%d%H%M%S", time.localtime(time.time())) def get_case_id():
""" 生成case的id,时间戳+uuid的第5到8位 """
return get_timestamp() + uuid.uuid1().hex[4:8] if __name__ == '__main__': print(get_timestamp())
print(get_case_id())
mongo:
from pymongo import MongoClient class Mongo(object):
""" MongoDB数据库的增删改查 """ def __init__(self, host='127.0.0.1', port=27017):
self.connect = MongoClient(host, port) def __del__(self):
self.connect.close() def insert(self, database, collection, documents):
""" 如果要插入的参数是一个,就执行insert_one()返回单个id,否则就执行insert_many()返回id的list """
_database = self.connect.get_database(database)
_collection = _database.get_collection(collection)
if isinstance(documents, dict):
result = _collection.insert_one(documents)
return str(result.inserted_id)
else:
result = _collection.insert_many(documents)
return [str(id) for id in result.inserted_ids] def search(self, database, collection, filter):
""" 查找 """
projection = None
if "projection" in filter:
projection = filter.pop("projection")
_database = self.connect.get_database(database)
_collection = _database.get_collection(collection)
return _collection.find(filter, projection) def delete(self, database, collection, filter):
""" 删除 """
_database = self.connect.get_database(database)
_collection = _database.get_collection(collection)
_collection.delete_one(filter) def update(self, database, collection, filter, documents):
""" 更新 """
_database = self.connect.get_database(database)
_collection = _database.get_collection(collection)
_collection.update_one(filter, {'$set': documents})
测开之路六十:接口测试平台之common目录的更多相关文章
- 测开之路六十二:接口测试平台之公共的js、html、平台入口
common.js //定义后台的host和端口var host = 'http://192.168.xxx.1:8000'; //'http://127.0.0.1:8000'; //用于发送htt ...
- 测开之路六十六:UI测试平台之处理逻辑和蓝图添加到程序入口
from selenium import webdriverfrom common import get_case_idfrom common.mongo import Mongo class Log ...
- 测开之路六十五:UI测试平台之js
//添加网址的函数,生成一个输入网址的标签,并且把标签append到id为cases下function browser() { var html = '\ <div class="ro ...
- 测开之路六十四:UI测试平台之前端页面
{% extends "base.html" %} {% block script %} <!-- 引入js文件,需要在base.html留入口,不然渲染会出问题. --&g ...
- 测开之路六十一:接口测试平台之interface蓝图
create的js //添加header的函数function add_header() { // 这里是动态拼接html语句,带着样式,拼凑成页面的 "key [] value []&qu ...
- 测开之路七十六:性能测试蓝图之html
<!-- 继承base模板 -->{% extends 'base.html' %} {% block script %} <!-- 从cdn引入ace edter的js --> ...
- 测开之路七十:监控平台之html
监控平台的html <!-- 继承base模板 -->{% extends "base.html" %} <!-- 引入bootstrap-datetimepic ...
- 测开之路八十六:python操作sqlite
创建sqlite数据库,并创建表和数据 python自带sqlite3库可以创建数据库文件 导入库:import sqlite3 创建游标,指定数据库名字:con = sqlite3.connect( ...
- 测开之路七十六:linux变量和环境变量
变量 赋值 variable=0,访问 $var或${var} 参数 $n 用``引住的会先执行(~键) 位置参数 环境变量/etc/profile:全局的环境变量 . bash_profile:用户 ...
随机推荐
- levelDB SSTable-1
创建sstable文件 了解了sstable文件的存储格式,以及Data Block的组织,下面就可以分析如何创建sstable文件了.相关代码在table_builder.h/.cc以及block_ ...
- 创建Maven项目时,出现系列的错误提示的修改方法
1.创建Maven项目成功之后,需要修改一些配置, (1).java版本改为“本系统中java的版本号” 问题一:(2).Dynamic Web Module的version要改为2.5以上,然而本人 ...
- JAVA总结--dubbo与zookeeper
读累了就看看实操https://www.cnblogs.com/huasky/p/10214642.html 一.SOA 概念:SOA:Service-Oriented Architecture,面向 ...
- CentOS7 修复grub.cfg文件
为了达到实验目的,首先删除grub.cfg文件 重启后发现系统进不去了,这正是我们想要的 进入系统救援模式,通过输入以下命令修复grub.cfg文件 重启后发现能正常引导进入系统了
- BZOJ 4987 (树形DP)
###题面 https://www.lydsy.com/JudgeOnline/problem.php?id=4987 ###分析 先考虑贪心,显然k个节点形成一棵树 求出树的直径,显然直径应该只被经 ...
- 重载与重写、多态——java
方法的重写(Overriding)和重载(Overloading)是java多态性的不同表现,重写是父类与子类之间多态性的一种表现,重载可以理解成多态的具体表现形式. (1)方法重载是一个类中定义了多 ...
- python学习第四十四天斐波那契数列和yield关键词使用
斐波那契数列是数学中的常见的算法,第一个第二个不算,从第三个开始,每个数的都是前面两个数的和,使用yield关键词把生成的数列保存起来,调用的时候再调用,下面举例说明一下 def fab(max): ...
- vue自定义指令获取焦点及过滤器修改时间
<template id="comp3"> <div id="app"> <model :list="selectedl ...
- MySQL第五天——日志
日志 log_error(错误日志) 用于记录 MySQL 运行过程中的错误信息,如,无法加载 MySQL数据库的数据文件,或权限不正确等都会被记录在此. 默认情况下,错误日志是开启的,且无法禁止. ...
- 【记录】mybatis mapper.xml 基础
<choose> <when test=""> //... </when> <otherwise> //... </other ...