Skip to main content
 首页 » 编程设计

与 RobotFramework 一起使用的 Python 对于 if else 数字与 9 和大数字的比较返回错误

2025年05月04日15小虾米

这是我的 python 2.7 代码

def BigNumber(x, y): 
    return x if x > y else y 

这是我的机器人框架测试用例

Big_Number_tc 
    [Tags]    Test_TC 
    ${number_big}=    BigNumber    91    10000 
    log    ${number_big} 

当我运行代码时,显示的输出始终是 91,而不是 10000

单独运行python代码显示正确

但是当我使用Robot框架运行时,显示错误。

它只发生在其中有 9 的数字上

我也尝试过使用通常的 python if else 语法,但是对于带有 9 的数字,结果总是错误的

有什么原因以及解决方法吗?

请您参考如下方法:

默认情况下,Robot Framework 将所有标量变量视为字符串,因此您的自定义关键字将字符串 "91" 与字符串 "10000" 进行比较。有两种选择:

  1. 在关键字中将参数转换为所需的数据类型
  2. 明确将数字传递给您的关键字。为此,请使用 ${} 语法,即 ${91}