【发布时间】:2021-07-18 13:08:09
【问题描述】:
我正在尝试使用 Robotframework 学习数据驱动测试,我目前在 Windows 10 机器上运行版本 4.0.1 和 python 版本 3.9.4。
但我怀疑我使用的语法是针对较旧版本的机器人框架。
我使用一个外部文件来设置我的步骤,然后我将它导入到我的实际测试用例文件中。
当我尝试为我的 *** 测试用例 *** 编写额外的标头信息时遇到错误 这是我的代码:
*** Settings ***
Library SeleniumLibrary
Resource ../Resources/login_resources.robot
Suite Setup Open my Browser
Suite Teardown Close Browsers
#Test template to use
Test Template Invalid login
*** Test Cases *** username password
Right user empty password admin@yourstore.com ${EMPTY}
Right user wrong password admin@yourstore.com xyz
Wrong user right password admin@yourstore1.com admin
Wrong user empty password admin@yourstore1.com ${EMPTY}
Wrong user wrong password admin@yourstore1.com xyz
*** Keywords ***
Invalid login
[Arguments] ${username} ${password}
Input User Name ${username}
Input Pwd ${password}
Click Login Button
Error message should be visible
所以 *** 测试用例 *** 的整个部分现在都是红色的:
*** Test Cases *** username password
Right user empty password admin@yourstore.com ${EMPTY}
Right user wrong password admin@yourstore.com xyz
Wrong user right password admin@yourstore1.com admin
Wrong user empty password admin@yourstore1.com ${EMPTY}
Wrong user wrong password admin@yourstore1.com xyz
什么是正确的语法,所以所有场景都可以在一个测试用例下?
【问题讨论】:
-
我不确定是什么问题,请显示框架的错误信息。您的第一个代码示例在 Robot Framework 4.0 中运行良好,您的第二个示例有缩进错误。如果您想要 1 个测试用例,则删除第一列,使用模板定义单个测试并从“设置”表中删除
Test Template。 -
实际上问题是我的资源文件中有一个空的 *** Test Cases *** 标题。测试用例现在通过了,但用户名的测试数据标记为红色并标有未找到关键字定义,但测试用例通过了:)
-
这听起来像是您的 IDE 的问题。建议在资源文件中使用 .resource 文件扩展名,这样框架会在这种情况下报错。
-
我使用的是 PyCharm 2021.1.1 社区版,我将资源文件更改为 .resource,但这导致 IDE 崩溃,我之前使用 .robot 获取资源文件没有错误,无论如何,至少测试用例是有效的:)