* * * 文章内容仅是作为个人学习记录,如有不足,欢迎指正♥
posts - 19,comments - 0,views - 10243
复制代码
释解:
1、用例代码用来创建post的http请求
2、host文件代码用来维护session的生成,生成的过程中引用了两个单位的文件,一个是var,用来维护变量的定义和URL基础信息,一个是db,用来维护数据库的链接,可理解为python的枚举
3、python定义的函数体代码用来解析json的文件信息,方便创建用例时直接引用

ps:
秉承高内聚,低耦合,越底层基础的公共方法,越要独立,方便后续改动,亦节省维护成本。
=================================用例代码====================================== *** Settings ***#声明需要用到的测试库,声明资源文件,俗称全局配置表 Library RequestsLibrary Library Selenium2Library
# %{ENV_Test}本地环境变量,后面为引入的文件路径 Resource %{ENV_Test}/keyword/api/host.robot

Resource %{ENV_Test}/keyword/api/requestbody.py
Suite Setup Run Keywords Create Test Session
*** Variables ***#Variables,定义测试套件的全局变量,俗称全部变量表
${Mid}   202208120000001
*** Keywords ***#定义测试套件的用户关键字

*** Test Cases ***#定义测试套件的测试用例 Test succes case [Documentation] 创建成功的用例,data引用的是requestbody定义的get_data函数 {data} = get_data 20 {mid} BankCode=MIDB ${response}= post on session Test_SEESION ${Order_Url} headers=${headers} json=${data} expected_status=200 ${resp_json} set variable ${response.json()} log ${resp_json} ===========================host文件代码========================================= # host属于资源库文件表,此表不可用来写Test cases,否则会报错 *** Settings *** Library RequestsLibrary # 链接域名等变量信息单独写在var.robot文件里,可以理解为python的Enum枚举,节省后续维护成本 Resource %{ENV_Test}/config/var.robot *** Variables *** # 数据库的链接配置单独写在db.cfg文件里 ${DbConfigFile}= %{ENV_Test}/config/db.cfg *** Keywords *** Create Test Session [Documentation] 创建测试环境的session connect to database dbName=Test dbConfigFile=${DbConfigFile} {MId_KEY} = select * from 表 where user_id={MId} {MId_KEY} set variable {MId_KEY} set global variable {MId_KEY} ${headers}= create dictionary Authorization=Bearer ${MId_KEY} ... MId=${MId} ... Content-Type=application/json create session Tset_SEESION ${MID_HOST} headers=${headers} ============python定义函数==================================================== def get_data(amount,mid,**kwargs): path = path + 'create.json' with open(path) as f: data = json.load(f) data["amount"] = amount data["mId"] = mid for key in kwargs.keys(): data["metaData"][key] = kwargs[key] res = json.dumps(data) return json.loads(res)
复制代码

 

posted on   __陈胖胖  阅读(52)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示