You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Robot Framework的.robot文件中删除.resource文件关键字的参数?

如何在Robot Framework测试文件中修改Resource定义的套件级字典变量

完全可行,因为套件级变量(Suite Variable)是整个测试套件共享的,测试用例可以直接对其进行修改操作。你之前遇到的问题大概率是变量引用或操作方式有误,以下是具体实现步骤:

1. 确认Resource文件中变量的定义方式

确保你的Start关键字是用Set Suite Variable将字典设为套件级变量,示例如下(假设Resource文件名为Common.resource):

*** Keywords ***
Start
    # 创建包含目标参数的字典
    ${BODY}=    Create Dictionary    userSystemName=test_system    ispbPsp=98765    isSystem=True
    # 将字典设为套件级变量,供整个套件共享
    Set Suite Variable    &{BODY}

2. 在测试文件中修改套件变量

在测试用例中调用Start后,直接使用Remove From Dictionary关键字操作套件级的&{BODY}即可,无需额外处理。示例测试文件代码:

*** Settings ***
Resource    Common.resource
Library    RequestsLibrary

*** Test Cases ***
Send Request Without ispbPsp
    # 调用Resource中的Start关键字,初始化套件级BODY变量
    Start
    # 直接移除字典中的ispbPsp参数
    Remove From Dictionary    &{BODY}    ispbPsp
    # 发送请求,此时BODY已不包含ispbPsp
    Create Session    api_session    https://your-api-domain.com
    ${response}=    Post Request    api_session    /target-endpoint    json=&{BODY}
    # 后续断言或处理逻辑
    Should Be Equal As Strings    ${response.status_code}    200

关键注意事项

  • 操作字典时必须使用&{BODY}的格式(带&符号),明确表示这是一个字典变量
  • 不要在测试用例中重新赋值${BODY}(比如${BODY}= Create Dictionary...),否则会创建局部变量覆盖套件级变量,导致修改无效
  • 如果使用的是全局变量(Set Global Variable),操作方式完全一致

内容的提问来源于stack exchange,提问作者evojd

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 21:35:14