【问题标题】:Import custom library from a path using java in robot framework test cases在机器人框架测试用例中使用 java 从路径导入自定义库
【发布时间】:2018-01-09 01:01:39
【问题描述】:

我创建了一个包含机器人关键字的自定义库。为了使用这些关键字,我必须指定

Library    abc.xyz.<Class_name>

然而这看起来并不干净。我只想拥有

Library    <class_name>

这似乎是标准的方式。我如何让它发挥作用?

【问题讨论】:

    标签: automated-tests robotframework


    【解决方案1】:

    您可以在 PYTHONPATH 环境变量中指定自定义库的路径

    然后像使用它一样

    *** Settings ***
    Library    abc.java
    

    有关更多选项和信息,您也可以参考以下答案

    Import custom library from a different path in Robot Framework

    【讨论】:

      【解决方案2】:

      Robot Framwork 中的库名称由两部分组成:

      Library    <Package Path>.<Class_name>
      

      在许多情况下,这意味着类似:

      Library    org.company.application.<Class_name>
      

      这在 Java 代码中通常体现为:

      package org.company.application;
      
      public class SampleKeywordLibrary {
      

      为了仅在 Robot Framework 中使用类名,您的类中必须没有定义包路径。根据您的编辑器,它可能还需要对您的项目设置进行一些更改。

      Java:

      public class SampleKeywordLibrary {
      
          public static final String ROBOT_LIBRARY_SCOPE = "GLOBAL";  
      
          public void MyCustomJavaKeyword() {
      
          }
      
      }
      

      然后机器人文件看起来像:

      *** Settings ***
      Library   SampleKeywordLibrary
      
      *** Test Cases ***
      TC
          My Custom Java Keyword
      

      当您将其导出/编译为 Jar 文件后,将其放置在您想要存储它的位置并从 Jython 上下文中启动 Robot Framework,如下所示:

      C:\Python\jython2.7.0\bin\jython.exe -
       J-Dpython.path=C:\Python\jython2.7.0\Lib\site-packages 
       -J-cp .;C:\TA\Workspace\StackOverflowJython\SampleKeywordLibrary.jar 
       -m robot.run 
       -s StackOverflowJython.Test 
       C:\TA\Workspace\StackOverflowJython
      

      【讨论】:

        猜你喜欢
        • 2017-07-25
        • 2016-03-01
        • 1970-01-01
        • 2017-11-14
        • 2016-12-14
        • 1970-01-01
        • 2017-07-14
        • 2017-07-31
        • 1970-01-01
        相关资源
        最近更新 更多