【问题标题】:how to use robot framework for value validation?如何使用机器人框架进行价值验证?
【发布时间】:2020-03-20 07:31:27
【问题描述】:

机器人框架世界的新手。我编写了一个 ppython 程序来比较使用 pandas 的 CSV 文件的三个 comulns 的值。到目前为止,一切都很好。程序运行成功。但是,我需要使用机器人框架来创建测试用例并将结果显示为通过或失败。下面是python程序:

import pandas as pd

# Reading the CSV file

df = pd.read_csv(r'xl1.csv', skipinitialspace=True, sep=',')

# Summation pf the two columns and giving results

sum1 = df['Gross_Salary'].sum()
sum2 = df['Deduction'].sum()
diff = sum1 - sum2

if diff == df['Net_Salary'].sum():
    print("Pass")
else:
    print("Fail")

上面的代码是读取一个 CSV 文件,并添加两列,然后将值与第 3 列进行比较。如果匹配,则“通过”,否则“失败”

CSV 文件:

Gross_Salary Deduction Net_Salary
100             20         80
2000            200       1500
300             0          300

下面是机器人代码:

*** Settings ***
Library     SeleniumLibrary
Library     Process
Library     BuiltIn

*** Test Cases ***
PandaTest
    ${result}=      run process     python  <path_to_xl_parse.py>
    BuiltIn.Should Be Equal As Strings       ${result.rc}  PASS

我遇到以下错误:

PandaTest                                                             | FAIL |
2 != PASS
------------------------------------------------------------------------------
Pan                                                                   | FAIL |
1 critical test, 0 passed, 1 failed
1 test total, 0 passed, 1 failed

请帮忙, 谢谢

【问题讨论】:

  • df['Net_Salary'].sum().all 中的 all 是什么?
  • 当我不使用“all”时,我遇到了错误。但是,现在我看到使用 sum(),错误消失了。所以它可以被忽略,也可以从主帖中删除
  • 查看您的csv 文件第二行Net_Salary + Deduction != Gross_Salary。您可以使用df[~(df['Net_Salary'] == (df['Gross_Salary] - df['Deduction']))] 列出失败的行
  • 我真的不明白你要我对这两个代码进行哪些更改
  • 您的代码没有问题,您的测试数据存在问题。 在示例数据中,第二行的逻辑 Net_Salary = Gross_Salary - Deduction 失败。您需要更正您的测试数据。您可以使用上述注释中的代码列出失败的行。

标签: python robotframework


【解决方案1】:

“通过”不等于“通过”。您应该在两个代码中使用相同的字符串。

并使用

Log    ${result} 

首先看看你从脚本中得到了什么。在搜索错误时,打印值总是一个好主意。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-06-22
    • 2020-12-07
    • 2011-02-20
    • 1970-01-01
    • 2018-11-15
    • 2017-08-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多