如何使用 Robot 框架 运行 测试用 Java 编写的 class 的用例?

How do I run test cases for a class written in Java, using Robot framework?

我正在尝试学习如何使用 Robot Framework。我使用 Eclipse 创建了简单的 Java 项目。它包含一个包 - test 并且在这个包中只有一个 class - MyKeywords。这是 class 内容:

package test;

public class MyKeywords {

    public String sayHi(String name)
    {
            return "Hello " +name ;
    }

    public String sayHi()
    {
            return "Hello World!";
    }

    public String typeOf(Object param)
    {
            return param.getClass().getSimpleName();
    }
} 

然后我创建了简单的 .txt 文件,它应该包含测试用例。这是 my_suite.txt 文件:

*** Settings ***
Library           test.MyKeywords

*** Test Cases ***
MyTestCase
    ${message}    say hi
    Log    ${message}

MyTestCase2
    ${message}    say hi    my_name
    Log    ${message}

MyTestCase3
    ${message}    type of    42
    Log    ${message}

每当我尝试将 my_suite.txt 文件粘贴到项目目录中时,它都会在 bin 目录下。 之后,当我从终端 运行 pybot my_suite.txt 时(我在 Mac OS),我收到以下消息:

[ ERROR ] Error in file '/Users/b18/Documents/workspace/Example/my_suite.txt': Importing test library 'test.MyKeywords' failed: Module 'test' does not contain 'MyKeywords'. ============================================================================== My Suite

============================================================================== MyTestCase
| FAIL | No keyword with name 'say hi' found. ------------------------------------------------------------------------------ MyTestCase2
| FAIL | No keyword with name 'say hi' found. ------------------------------------------------------------------------------ MyTestCase3
| FAIL | No keyword with name 'type of' found. ------------------------------------------------------------------------------ My Suite
| FAIL | 3 critical tests, 0 passed, 3 failed 3 tests total, 0 passed, 3 failed ============================================================================== Output: /Users/b18/Documents/workspace/Example/output.xml Log:
/Users/b18/Documents/workspace/Example/log.html Report: /Users/b18/Documents/workspace/Example/report.html

我的错误在哪里,我错过了什么?

你在这里混合语言。

您正在使用 Java 关键字和 pybot(纯 python - 不支持 java)。

您需要改用 jybot(您可以使用 java 下载 jar 和 运行)

Jybot 基于 Jython - 并支持 python 和 java 代码。