答疑 | EOLINKER 第六期 Q&A 答疑手册
2021,9,16 教程

​大家期盼已久的Eolinker Q&A 环节又回来了,这次我们集中了08-09月份大家提问较多的几个问题,并通过QA的方式为大家进行解答,那么我们马上开始!

Q1在后置脚本里面获取返回结果中某个节点数组的个数总是报错,应如何解决?

var a=eo.http.response.get()var b=a.result.length()

报错:

A1:var a=eo.http.response.get()获取到的是string格式的,小伙伴应该试试解码一下再去掉length函数的括号

var a=eo.json.decode(eo.http.response.get())

var b=a.result.length


Q2js中eo.env.param.get和eo.globals.get获取不到变量时,会连同整个key都没提交,如下图当a没有值时整个定义tt都不会输出。

A2由于上面的值是 undefined,javascript 的处理逻辑是这样的,undefined 的内容不会展示。


Q3是否可以提供对外调用的支持,比如提供一个run方法,用于运行测试用例,参数指定要运行的测试用例、输出测试结果报告、日志文件等,这样可以本地分模块去调用,同时执行不同的用例,因为研发平台现在串行执行,每次都是执行长时间超一小时以上,这速度满足不了现在版本迭代快速回归需求。

A3同学们可以参考使用openapi教程中关于此类需求的描写,链接:https://help.eolinker.com/private_cloud/openapi/html/v2.html

我们以运行的测试用例、输出测试结果报告为例,见下图:


Q4审批节点不确定是几个的,怎么来写测试步骤呢,有好的方法吗?比如说UserA发起了个请假的流程,这个流程是根据不同的人启动的流程节点是不一样的,如果是3个流程就需要3个审批人去登录审批,如果是多人的话,就需要多个人去审批,如果多个人审批的时候就需要多个测试步骤,那流程人数怎么确定,是api返回的结果吗?

A4这位同学提出了一个非常好的问题,目前我们为大家提供的版本里,可以通过脚本步骤写if判断满足这个需求,而在私有部署产品最新的8.5版本中,可以支持用户使用图形化的流程判断,如图中加入判断条件,符合则执行流程1里的api,不符合则执行流程2里的api。


Q5:我有一个接口的返回结果,数组里数据需要逐个检验,想问下工具里怎么写(想使用json文档结构)

A5json文档结构需要请求体值一致的情况下才能校验,不太适用于这种使用场景,但我们可以先在后置脚本里面编写jsonpath语句,然后再写for循环。

例如:

response = eo.json.decode(eo.http.response.get())

eo.info(eo.jsonpath(“$.[*].insuranceCode”,response))


Q6使用时先调用了登录接口,然后在api里面点击测试是可以请求成功的, 但是测试用例这里点击测试,就请求不到token了。

A6关于测试用例获取不到登录信息的问题,因为测试用例那边使用不到cookie管理,所以我们可以切换成插件测试,或者将登录接口写在项目环境的前置脚本里面来引用。


Q7怎么设置定时任务,让某一批用例定时去跑呀?

A7我们可以在在自动化测试里面可以设置定时任务,但是如果我们并未购买自动化测试模块,则可以尝试自行编写定时脚本来请求我们的Openapi。


Q8api管理与测试模块下,相应数据类型更多,和自动化测试模块并下不一致。

A8API Studio的API管理测试模块会偏向文档管理方向,所以我们看到的类型会更细致,另一方面自动化测试模块里更偏向测试方向,因此会看到number类型包含int,Short,Long等,而实际上大家做的测试是不受影响的。


本期选出的Q&A都是工单里提问率较高的问题,看完本篇文章的小伙伴们,希望能帮助大家解决在使用 EOLINKER 过程中遇到的问题,如果有任何使用上的问题欢迎在下方留言告诉我们,我们将第一时间帮您解决。或者访问 EOLINKER 的 帮助中心,我们下期再见!

EOLINKER全体预祝全球开发者五一劳动节快乐!

💡关于 Eolinker

📞联系我们

🏠部分客户

💎投资机构