File在Robot FrameWork中没有测试用例表

时间:2014-05-02 07:28:58

标签: robotframework

我遇到了与Robot Framework测试用例有关的问题。执行后,控制台(cmd屏幕)显示错误:

"[ ERROR ] Parsing 'Login_admin_page.txt' failed: File has no test case table."

请查看我的测试套件以及测试用例,并帮助我找出问题所在:

:一种。测试用例的结构:

TS_test(文件夹)

- Login_admin_page.txt( - >主要测试用例)

- resource.txt( - >资源文件)

B中。测试用例文件的内容:

Login_admin_page.txt

***Settings***
Documentation     A resource file with reusable keywords and variables.
...               This test is functionally identical to the example in
...               valid_login.txt file               

Resource          resource.txt
Test Teardown     Close Browser

***Test Cases***
Open Login page
    Open Browser To Login Page

resource.txt

    *** Settings ***
Documentation     A resource file with reusable keywords and variables.
...
...               The system specific keywords created here form our own
...               domain specific language. They utilize keywords provided
...               by the imported Selenium2Library.

Library     Selenium2Library


*** Variables ***
${SERVER}         http://google.com
${BROWSER}        Firefox
${DELAY}          0
${VALID USER}     admin
${VALID PASSWORD}    admin
${INVALID USER}      xyz
${INVALID PASSWORD}  invalid 

*** Keywords ***
Open Browser To Login Page
    Open Browser    ${SERVER}    ${BROWSER}
    Maximize Browser Window
    Set Selenium Speed    ${DELAY}
    Login Page Should Be Open

Login Page Should Be Open
    Title Should Be    Google

使用cmd并访问文件夹“TS_test”,执行“pybot Login_admin_page.txt”。屏幕显示错误。

感谢。

6 个答案:

答案 0 :(得分:2)

错误File has no test case table只能在一种情况下发生:您没有测试用例表。如果您有测试用例表但没有测试用例,则会出现其他错误。

测试用例表由一行开头,该行以一个或多个星号开头,然后是短语"测试用例"或"测试用例"。情况并不重要,尾随的星号被忽略了。一个相当常见的模式似乎是在行的两端使用多个星号,例如:*** Test Cases ***

如果您尝试将没有此标题的文件提供给机器人,您将收到报告的错误。例如,尝试在完全空的文件上运行robot会产生确切的错误。另外,如果你拼错了#34;测试用例",你会得到同样的错误。

鉴于此,我想知道您的错误是否只是在尝试运行之前忘记保存文件。

答案 1 :(得分:1)

请设置正确的行结尾。 在我的情况下,我已经从Mac(CR)更改为UNIX(LF)

答案 2 :(得分:0)

测试用例文件的编码怎么样?我保存了unicode编码的测试文件,我用它来犯同样的错误。将您的测试用例文件保存为UTF-8,它将解决您的问题。

答案 3 :(得分:0)

我在过去使用Robot Framework遇到过类似的文件解析错误,主要是在尝试使用Microsoft Word编写html文件时(不推荐!)。我一直发现遵循机器人框架用户指南中关于Debugging的建议最终会帮助我找到问题。

在这种情况下,我建议您尝试打开Robot Framework的syslog输出,并查看它从您的测试用例文件中设法解析的内容(如果有的话)。我最近用它来弄清楚由Microsoft Word引入到html测试用例文件中的一个讨厌的UTF-8字符编码问题(再次,除非你真的需要,否则不推荐!)。

(来自用户指南):

#!/bin/bash

export ROBOT_SYSLOG_FILE=/tmp/syslog.txt
export ROBOT_SYSLOG_LEVEL=DEBUG

pybot --name Syslog_example path/to/tests

答案 4 :(得分:0)

我遇到了同样的问题,在我的情况下,它只是在 *测试用例* 和实际测试表的开始之后缺少新行。

答案 5 :(得分:0)

当您复制测试用例文件的内容时,就会发生这种情况。就我而言,我已经复制了测试用例的内容并粘贴到了nano编辑器中

它粘贴了下面类似的内容,没有适当的间距

*设置 库Selenium2Library 变量 $ {BROWSER} firefox 测试用例* Hello Open Browser http://www.google.com browser = $ {BROWSER}

然后我打算像下面及其工作一样正确并对齐

*设置* 图书馆Selenium2Library

*变量* $ {BROWSER} firefox

*测试用例* 你好     打开浏览器http://www.google.com浏览器= $ {BROWSER}