java - 机器人框架 : why suite setup seems not to be working properly?

标签 java robotframework

我在 java 上使用 RF(通过 Hi-Fi selenium-java 实现)。我目前有一个 Java 类,我正在其中实现一个名为 Driver Setup 的关键字来设置浏览器驱动程序的路径。

事情是,我应该能够在 __init__.robot 中进行套件设置和拆卸。但有些事情似乎并没有像我期望的那样工作。我的套件设置是设置 selenium 驱动程序路径(我的 Driver Setup 关键字)。所以我这样做了:

*** Settings ***
Suite Setup                 Driver Setup
Test Setup                  Open Browser   ${my app url}  chrome
Test Teardown               Close Browser

但是,我似乎无法执行 Driver Setup ,如我所见:Parent suite setup failed: No keyword with name 'Driver Setup' found.但是,如果我做 Test Setup而不是套件设置,它一切正常并且测试成功运行。

因此,作为一种解决方法,我必须这样做:
*** Settings ***
Test Setup                  Run Keywords    Driver Setup    AND     Open Browser     ${my app url}  chrome
Test Teardown               Close Browser

对于上下文:

我实现驱动程序设置的java类放在/src/main/java/mypackage/MyKeywords.java中.

/src/test/robotframework/acceptance目录我有一个全局资源文件。也在 /src/test/robotframework/acceptance , 我有一个包含测试套件 (Tests.robot) 的目录、一个 __init__.robot 初始化文件和一个用于高级关键字和变量的 Resources.robot 文件。

这几乎总结了我的目录设置:
├───main
│   ├───java
│   │   └───mypackage
│   │           MyKeywords.java
│   │
│   └───resources
└───test
    ├───java
    ├───resources
    │       chromedriver.exe
    │
    └───robotframework
        └───acceptance
            │   GlobalResources.robot
            └───someApplicationFeature
                    Resources.robot
                    Tests.robot
                    __init__.robot

我在 GlobalResources.robot 中调用 SeleniumLibrary 和我自己的库,因为我希望它们可用于所有测试套件,所以我这样做了:
*** Settings ***
Library                 SeleniumLibrary
Library                 mypackage.MyKeywords

那么...为什么我的自定义关键字不适用于套件设置?

最佳答案

- 下载最新版本的chrome驱动程序并更新chrome。
- 将最新的 chrome 驱动程序移动到路径所在的文件夹。 (例如 mv chromedriver/usr/local/bin)

关于java - 机器人框架 : why suite setup seems not to be working properly?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48291730/

相关文章:

java - 在 ListView 中使用 XML 布局扩展自定义 View

python - 代理 : Robot Framework and Firefox

appium - 我可以获得机器人框架内测试用例步骤的统计信息吗?

Selenium: session 外部 key 不可用

java - 为什么 Java MySQL 连接无法检测到触发器所做的更改?

java - 无法使用 Gradle 编译 Java 库,可以使用 IDE

java - java中的二维数组并将其用作一维

java - 如何以树形 View 显示消息回复? Java 和 hibernate

python - Robot Framework - 访客界面 - 如何获取关键字的关键字子项?

ssh - 如何通过robotframework执行ssh命令