1.0.2 • Published 3 years ago

ming_api_utils v1.0.2

Weekly downloads
1
License
ISC
Repository
-
Last release
3 years ago

ming_api_utils用于辅助编写与管理接口自动化代码

安装

新建一个目录,然后执行如下命令

npm init --yes
npm i ming_api_utils  -D  --registry=https://registry.npm.taobao.org

下载min-api.jar 用于接口代码管理

https://www.yuque.com/docs/share/c63d11da-9ed1-40b3-8876-ecf905563ff7

项目配置文件

在项目根路径创建applicationConfig.json 也可以在new ApiUtils()时传入

{
  "myDbconfig":{
    "host"     : "127.0.0.1",
    "user"     : "root",
    "password" : "123456",
    "port"     : "3306",
    "database" : "miapi"
  }
}

api对应的示例代码

注意这部分代码主要借助postman生成,console.log将作为方法U.runApi的返回值

var axios = require('axios');
var data = '';
var config = {
  method: 'get',
  url: 'http://localhost:8888/miApiListByPage?startPage=1&limit=10',
  headers: { 
    'authorization': 'abcdefg', 
    'userId': '1607168363000'
  },
  data : data
};
axios(config)
.then(function (response) {
  console.log(JSON.stringify(response.data));
})
.catch(function (error) {
  console.log(error);
});

测试示例代码

测试一批api

const {M,ApiUtils} =require("ming_api_utils")
U=new ApiUtils();

M.host="http://localhost:8888"
//文件日志
M.log_file_enable = false;
//控制台日志
M.log_console_enable = true;
//执行间隔
M.runApiDelay=100;

//增,查,改,删
async function main(){
     U.startTest("接口管理场景一测试")
     r=await U.runApi("接口列表") 
     U.expectEql(r.success,true)
     await  U.endTest("接口管理场景一测试")
     process.exit(0); 
 }
 
 main()

测试一个api组

const {M,ApiUtils} =require("ming_api_utils")
U=new ApiUtils();


M.host="http://localhost:8889"
//文件日志
M.log_file_enable = false;
//控制台日志
M.log_console_enable = true;
//执行间隔
M.runApiDelay=100;

async function main(){
     r=await U.runApiGroup("数据管理") 
     process.exit(0); 
 }
 
 main()

环境变量

ming-api只是一个管理接口代码的工具,接口代码可以带有环境变量 环境变量由执行环境的上下文决定

console.log("${M.host}")

断言与测试报告

断言与测试报告主要由下面三个方法提供

U.startTest("groupName");//开启一个测试组
U.expectEql("a","a");//断言判断,暂存测试报告
U.endTest("groupName");//结束一个测试组,测试报告入库