大家期盼已久的EoLInker Q&A 环节又回来了,这次我们集中了09月份大家提问较多的几个问题,并通过QA的方式为大家进行解答,那么我们马上开始!
Q1:想要操作数据库,有连接数据库对数据库进行增删改查功能吗,比如我想验
api操作后数据库某张表多了一条记录,可以实现吗?
A1:可以实现的,我们eoLInker平台的
自动化测试模块是支持数据库连接的,如图1可以看到这里可以连接数据库的类型有Mysql,Oracle,PostgreSQL。
图1
这里以Mysql为例,选择自己需要连接数据库类型后,填写数据库相关的信息,数据库地址,端口号,数据库名称等等点击测试按钮显示成功则连接成功,在填写好数据库蓝连接名称就可以保存使用了,如图2可以看到显示连接成功之后可以保存使用。
图2
接下来在流程测试用例里,进入需要添加数据库步骤的api接口里如图3添加数据库步骤操作(此步骤需要连接数据库之后才能添加),进行数据库操作。
图3
数据库步骤中有如图4的三个功能区,第一个是编写SQL,这里编写正确的sql语句就可以对数据库进行操作;第二个提取返回结果,给后面步骤引用,在“参数名”一栏填入参数,下方黑框中会自动生成对应格式供后续步骤提取;第三个功能区可以自定义编写校验规则进行校验。
图4
Q2:对
api设定定时执行,设定的定时任务,执行后的报告数据统计通过率如何理解。
A2:测试报告的通过率分为两个方面,一是定时任务本身的通过率,二是定时任务里添加的api的通过率,只有当该定时任务api通过率为100%时该定时任务视为通过,例如:在自动化模块设定定时任务,如图1设定好时间添加好需要测试的用例等。
图1
执行之后可以在如图2测试报告中的“定时测试任务”查看定时任务的测试报告详情,这里显示的通过率是定时任务里用例的通过率,如图3可以看到很详细测试报告。
图2
图3
在概况中也可以查看到定时任务的测试情况如图4,这里查看到的是定时任务的通过率。
图4
Q3(私有云):用户进行rsa公钥带有填充模式,输出为hex的加密。然后用rsa私钥解密,应该怎样操作?
A3:RSA是非对称加密,加密与解密使用的密钥不是同一密钥,对中一个对外公开,称为公钥,另一个只有所有者知道,称为私钥。用公钥加密的信息只有私钥才能解开,反之,用私钥加密的信息只有公钥才能解开(签名验签),加密解密密钥不一致,它们是
成对出现。我们在eoLInker里面点击RSA公钥加密,如图1,pubLIckey代表的是我们的公钥秘钥,输入加密公钥。格式为:(以“-----BEGIN PUBLIC KEY-----”开头 “-----END PUBLIC KEY-----” 结尾)同样的私钥格式为:(以“-----BEGIN PRIVATE KEY-----”开头 ,“-----END PRIVATE KEY-----” 结尾)
图1
填充方式(如图2来源于网上):
图2
Q4(私有云):如果需要加密的数据过长要怎样解密?
A4:如果字段过长,需要分段解密,我们可以怎样在eoLInker里面自定义函数来解决。首先设置自定义函数,如图1
图1
自定义函数内容:
MAX_DECRYPT_BLOCK = input_max_decrypt_block || 128
function fn_decrypt(tmp_input_msg) {
return eo.rsaPubLIcDecrypt({
key: input_private_key,
padding: "RSA_PKCS1_PADDING"
}, tmp_input_msg, "base64")
}
TRy {
var ct = "";
var t1;
var buf = Buffer.from(input_msg, "base64");
var inputLen = buf.lengTH;
//开始长度
var offSet = 0;
//结束长度
var endOffSet = MAX_DECRYPT_BLOCK;
//分段解密
while (inputLen - offSet > 0) {
if (inputLen - offSet > MAX_DECRYPT_BLOCK) {
t1 = fn_decrypt(buf.sLIce(offSet, endOffSet));
ct += t1;
} else {
t1 = fn_decrypt(buf.sLIce(offSet, inputLen));
ct += t1;
}
offSet += MAX_DECRYPT_BLOCK;
endOffSet += MAX_DECRYPT_BLOCK;
}
return ct;
} catch (ex) {
return false;
}
然后再前置脚本里面插入自定义函数,如图2
图2
关于加解密的其他内容还可以参考一下系统里面的内置函数手册
https://help.eoLInker.com/api_management/html/functions_book/crpty.html
Q5(Saas):第三方系统可以使用
api自动化测试吗?
A5:可以的,用户可以使用 EoLInker 的开放API 对接 Jenkins、企业内部系统或其他第三方系统,实现
API 管理、
自动化测试、
监控等需求。openapi测试步骤如下:1、首先在工作空间--openapi,复制openapi的调用秘钥;
2、打开openapi线上管理文档,选对应的场景
api接口文档,点击测试按钮;
3、请求头部处填入你的秘钥,请求体里面分别填入红框处的内容,环境id是项目环境的id,填写完成之后点测试;
4、最后可以在系统--测试报告--openapi测试里面查看刚刚的测试情况;
本期选出的Q&A都是工单里提问率较高的问题,看完本篇文章的小伙伴们,希望能帮助大家解决在使用 EOLINKER 过程中遇到的问题,如果有任何使用上的问题欢迎在下方留言告诉我们,我们将第一时间帮您解决。或者访问 EOLINKER 的
帮助中心,我们下期再见!