-
java实现接口测试中AES加密后Base64加密请求体数据
加密规则 请求体采用 AES(AES-GCM-256) 加密方式,AES 加密需申请 Key 和 IV, 请求时,先用 AES 加密,再用 Base64 对请求体的 data 内容进行加密 对于无法正常解密的,将返回code 状态码500。 代码实现 目录结构 . ├── AESJiami.iml ├── lib │ ├── bcprov-ext-jdk15to18-177.jar │ └…- 909
- 0
-
Java实现登录接口在redis中根据key值获取验证码
需求分析 在自动化测试中,登录接口的验证码的处理有两种常见的方案,第一种是通过ocr识别,这种方式不能保证百分百正确,通常用在UI自动化测试中。第二种是去数据库中直接查询验证码,这种方式可以保证验证码百分百正确,一般验证码都是保存在redis中,通常用在接口自动化测试中。这里我们给出第二种方案。 代码实现 目录结构 │ .gitignore │ RedisCode.iml │ ├─.idea │ …- 641
- 0
-
JAVA实现RSA加密并在Jmeter/测试平台中调用
需求分析 有些接口传参时会对敏感信息进行加密处理,如常见的登陆接口中的账号、密码,其中常见的加密方式有RSA加密,RSA加密的原理此处不再赘述,因此需要通过代码实现对所需要加密的字符串进行加密并返回加密后的结果,其中公钥通过接口来自动获取。 语言选择 起初考虑使用python处理加密,实现过程中发现MeterSphere平台使用的内置的python解释器使用第三方库需要借助 Virtualenv …- 887
- 0
-
Jmeter批量执行接口并持续输出变量到txt文件
需求 批量执行100个接口并提取返回的json中的数据保存到本地txt文件 实现 1.循环控制器 线程组下添加循环控制器,循环次数100次 2.从csv文件中批量读取接口地址 分析需要批量执行的接口发现接口格式为https://xxx.com/api/queryPTZPag?pageNum={num} 变量num为1-100 用python简单一个for循环生成所有的接口地址,此处不再列出 添加c…- 1k
- 0
-
robotframework自定义python关键字及失败用例重新执行
自定义python关键字 编写RF外库,导入自己定义的关键字 1.创建 __init__.py 文件,使导入的库每次运行前都初始化,并设置全局变量 2.在RF中导入库并使用关键字 失败用例重新执行 失败用例会重跑N次,直至成功or 耗尽重试次数, 生成的日志和报告文件中只会体现最后一次执行的结果。 之前的失败被完全过滤掉,只有在控制台中才可以看到它们的痕迹。 方法1:robot /conf/set…- 914
- 0
-
robotframework接口调用
使用RF做接口测试,需要安装requests 、robotframework-requests。 安装方式:pip install或pycharm中安装即可。 具体步骤 首先使用create session关键字创建一个会话,给该会话取一个别名叫api(在后续的请求里面可以直接使用该别名来使用) 常用关键字:https://www.jianshu.com/p/e37022dc78f2- 544
- 0
-
robotframework变量及常见操作
变量 RF的变量分为 标量, 列表 和 字典, 分别使用语法格式 ${SCALAR}, @{LIST} 和 &{DICT} 来定义 一、 标量 1.在测试套件Variable中定义参数,定义的参数是全局变量 测试用例中直接定义参数,定义的变量是局部变量 二、List列表 @{list} 和 ${list} 的区别 列表变量也是标量的一种,只是值是列表,所以可以看成是一个列表整体, @{li…- 611
- 0
-
selenium常用操作
操作浏览器常用方法 1. maximize_window() 最大化浏览器窗口 --> 模拟浏览器最大化按钮 2. set_window_size(width, height) 设置浏览器窗口大小 --> 设置浏览器宽、高(像素点) 3. set_window_position(x, y) 设置浏览器窗口位置 --> 设置浏览器位置 4. back() 后退 --> 模拟浏…- 524
- 0
-
robotframework数据库操作
需要安装robotframework-databaselibrary、pymysql(根据数据库安装对应的工具) 安装方式:pip install或pycharm中安装即可。 连接数据库:Connect To Database Using Custom Params 增删改:Execute Sql String 查询:query 断开数据库连接 disconnect from database- 535
- 0
-
robotframework的条件判断与循环
RF 中通常用 Run Keyword If / ELSE 关键字来达到类似 Python 中 if…else… 条件判断的功能 注意: 1.ELSE IF 和ELSE不是关键字,是run Keyword If里面的一部分,所以前面一定要加有省略号 2.ELSE IF 和ELSE 一定要大写 一.普通的For循环,开始的关键字是FOR,结束的关键字是END。语法和Python的语法基本相同。 FO…- 856
- 0
-
robotframework中实现上传与下载文件
上传文件 上传文件需要借助upfile.exe工具 1. 安装autoitv3,上autoit官网下载https://www.autoitscript.com/site/autoit/downloads/,点击下载autoit-v3-setup 2.双击autoit-v3-setup,一直点next安装 3.点击autoit window info(用于识别wondow窗口信息),弹出定位窗口 4…- 868
- 0
-
robotframework+selenium的PO模式、RF标识及编写规范
PO模式 Page Object模式是Selenium中的一种测试设计模式,主要是将每一个页面设计为一个Class(封装在一个class类中),其中包含页面中需要测试的所有元素(按钮,输入框,标题等)的属性和操作,这样在Selenium测试页面中可以通过调用页面类来获取页面元素,这样巧妙的避免了当页面元素id或者位置变化时,需要改测试页面代码的情况。当页面元素变化时,只需要更改测试页Class中页…- 925
- 0
-
robotframework框架的驱动模式
RF是基于python编写的功能自动化测试框架,支持3种驱动模式 关键字驱动模式 与python中的函数名保持一致。使得我们的自动化用例具备非常高的可读性,可以在基本关键字的基础上构造高级关键字,使自动化有了无限扩展的可能, 关键字的命名要一目了然:Add Contact Person,通过方法名即可清晰的知道具体的功能实现 数据驱动模式 数据和测试代码分离,即“模板(Template)”概念,在…- 757
- 0
-
robotframework元素定位实例详解
id、name、class、tag 以百度搜索框为例,可以通过以下4种方式来定位元素(分别是id、name、class、tag) 一、通过元素的id属性来定位元素——id是唯一标识(每个id都是不一样的) 用法:input text id=kw ${value} 二、通过元素的name属性来定位元素,name属性不是绝对唯一的 用法:input text name=wd ${value} 三、通过…- 606
- 0
-
Robot Framework常用库和常用关键字
Robot Framework常用关键字 --- BuiltIn库(内置) 转换数字/字符串 Convert to String 、Convert to Number 验证点 Should Be Empty、Should Be Equal、Should Be True、Should Contain、Should Not Be Empty、Should Not Be Equal、Should Not…- 817
- 0
-
初识RobotFrameWork 特性及文件构成
RobotFrameWork是什么 RF是一个基于python,可扩展的关键字驱动的测试自动化框架。 一个关键字对应一个功能,关键字分为系统关键字和用户关键字,系统关键字包含标准库(Builtin库)里面的关键字和第三方库里面的关键字可以在基本关键字的基础上构造高级关键字 列举几个内置关键字: log to console 和编程语言的“print”一样打印 Set variable 定义变量 C…- 717
- 0
-
Pycharm+RobotFrameWork+Selenium环境搭建
Python和Pycharm的安装这里就不在列出了,网上有很多的教程,下面说一下robotframework及pycharm常用插件的安装 安装robotframework pip安装方式 在python安装完成后并且配置好环境变量后直接在控制台输入 pip install robotframework 安装成功后,存放在python\lib\site-packages目录下 pycharm安装方…- 699
- 0
幸运之星正在降临...
点击领取今天的签到奖励!
恭喜!您今天获得了{{mission.data.mission.credit}}积分
我的优惠劵
-
¥优惠劵使用时效:无法使用使用时效:
之前
使用时效:永久有效优惠劵ID:×
没有优惠劵可用!