lf知识星球banner

测试驱动(接口)自动化语法说明

2018-03-15 16:57:42
admin
62808
最后编辑:Seagull 于 2020-05-28 17:14:18
简介:介绍当你自定义接口驱动时,语法的说明。 比如:当你要实现一个hession接口的自动化测试,那么需要你先用JAVA方法实现此接口,此方法有入参(String),有返回(String)。 然后你把此方法所在的项目打包成JAR,放到客户端的驱动目录,客户端启动执行时,会自动加载此JAR包。

对于2~5节的内容,同适用于Web UI、移动端、HTTP等类型的自动化测试,在后续的章节中不再单独进行说明。

Web服务端中的系统管理模块里面,有一个客户端管理功能,其中有一个配置驱动目录的选项,会默认有一个驱动目录为/TestDriver,如果你有几个项目在同一个客户端运行,为了避免包冲突的情况,建议您一个项目配置一个驱动目录。

将您打包好的测试驱动JAR包,放置在客户端编译好的项目根目录中的驱动目录下即可。

注意:是在编译好的项目根目录下的驱动目录中,不是直接放在项目代码目录下的驱动目录

1:普通的方法调用

包|定位路径:Package名.类名 

方法|操作:方法名

参数:参数1|参数2|……|参数n


示例:

2:参数引用以及传递

将用例里面前面步骤的执行结果,传递至后续步骤的包路径、方法、参数、预期结果中当成参数; 

赋值局部变量:$=value 

引用:@value  用例里面前面步骤的执行结果,传递至后续步骤的包路径、方法、参数、预期结果中当成参数; 当您需要引用项目中定义的公共参数时,直接使用 @变量名 引用即可。



赋值全局变量: $A=value 

赋值局部变量 $=value,作用域只在单条用例内的步骤间进行传递,而关键字 $A=value 支持作用域扩展到整个任务执行的生命周期内。只要是同一个调度任务内,都可以对此变量进行引用以及传递。


注意:


  • 当遇到参数值里面本身带了字符@的,请使用@@来转义。比如参数值是一个邮箱地址XX@qq.com,那么这时候你应该写成XX@@qq.com.
  • 当遇到参数值里面本身带了字符 | 的,请使用 \\| 来转义。比如有一个参加值是:tfwfsf|ysggfw|ggsvs  ,那么这时候你应该把这个参数写成这样:tfwfsf\\|ysggfw\\|ggsvs



示例:


3:预期结果精确匹配

将用例里面【方法|操作】执行的结果,与【期望的结果】字段里面的字符串进行精确匹配; 

直接在预期结果里面填写需要匹配的字符串即可。


4:预期结果模糊匹配

将用例里面【方法|操作】执行的结果,与【期望的结果】字段里面的字符串进行模糊匹配; 

模糊匹配: %=value

示例:

5:正则方式结果模糊匹配

将用例里面【方法|操作】执行的结果,与【期望的结果】字段里面的字符串通过正则表达式进行匹配; 

模糊匹配: ~=value

正则表达式写法,请自行百度,不再累述。针对多个结果模糊匹配,非包含字符匹配都可以用此种方式,非常灵活。

6:步骤间添加休眠时间

步骤执行完成后,等待 N 秒,在【步骤动作】中加上“10#Wait” 10 表示 10 秒; 

更多【步骤动作】说明,请参考3.2.5章节

示例:

    评论列表
    老许 2021-09-27 18:01:56 回复
    请问http这个 客户端怎么搞 在这个路径下传什么驱动,驱动哪里下的
    HestleMoney 2021-07-29 16:16:44 回复
    请问这个测试驱动到底是个什么概念?是要写在被测项目里面吗?
    xiang 2021-07-28 15:04:14 回复
    在导入python测试驱动后,执行完成,为什么没有获取到测试结果啊,已经在执行的文件中打印出来了。这个python执行大概要20秒左右才会完成,我看luckyframe客户端日志马上就判断执行结束了。
    testss 2021-05-06 16:30:25 回复
    目前的预期结果赋值,只能赋值成String类型,若是需要赋值成其他类型的数据,需要如何处理呢?
    三和大神 2021-04-23 18:59:34 回复
    客户端这个如何配置?现在就卡在这个客户端配置了,希望大佬后期能把最基本的使用做成视频教学,我相信有很多零基础的同学也可以使用上这个工具。当然这个可以是有偿服务,这样才能持续发展。
    小意 2021-03-17 21:11:35 回复
    怎么注入localStorage,跳过登录?webUI自动话可以引用驱动吗?
    IT_SU 2020-11-12 14:31:29 回复
    接口自动化有没有一套完整的流程,我是代码比较薄弱的人
    Seagull 2020-12-09 15:56:49 回复
    官网的资料你可以多看看,一般来说都可以搞定的,不需要太多的代码基础
    tester 2021-04-06 10:22:56 回复
    您好,接口测试还是需要写测试接口的代码,然后打成jar放进来吧,这还是需要写代码对吧
    white 2020-07-07 12:43:44 回复
    请问如果测试用例需要先登录,那么应该如何编写呢?
    Seagull 2020-08-20 18:00:01 回复
    先写登录用例,获取cookie或是session
    ss 2021-06-07 15:33:18 回复
    如何获取cookie 并传递给后面的接口使用,官网的手册找了很多,也没找到相关的说明,能说明一下么
    Seagull 2021-06-07 19:05:34 回复
    http://www.luckyframe.cn/allwz/httpcs-16.html 参考这篇文章
    阿布 2020-06-10 14:21:42 回复
    你好,这个文档对于代码功底薄弱的人来说还是有点云里雾里的,请问下能不能有视频教学,付费学习都行的呀。
    Vivian 2020-12-10 16:34:24 回复
    我也代码能力弱,为了整这个环境,差点没疯了。
    学习java,Intellij IDEA,maven、Git,linux服务器环境搭建,打包、发布 服务端和客户端、创建数据库。眼看完成了90%,结果卡在了两个地方:1、明明在本地时,启动服务端和客户端,客户端可以正常注册到服务端,但发布到外网服务器上,运行起来服务端和客户端,客户端就注册失败,怎么都连接不上服务端;2、移动端的安装包不知道怎么放进项目里,怎么调起来。想哭……
    于是每回项目间隙时,就拿出来看看,在网上找找资料,目前还没什么进展。慢慢研究,以后弄完了,整个详细的操作手册或视频,造福社会。
    Seagull 2020-12-13 09:23:37 回复
    首先给你点个赞,外网如果注册失败,很有可能是网络原因导致的,建议你从客户端telnet一下服务端的IP以及Netty的7070默认端口,看看是不是通的。期望你提供更详细的资料或视频,如果可以的话,我们可以放置到官网,造福其他同学。
    axiaocong 2020-04-15 18:34:57 回复
    在登陆步骤中获取的cookie,保存成变量,在下面请求的请求头里怎么引用这个变量?
    Seagull 2020-04-16 13:48:28 回复
    http://www.luckyframe.cn/dynamic/lfzsxq-75.html
    1/3
    发表评论
    评论通过审核后显示。
    付费知识圈