【问题标题】:Import Library contains no keywords导入库不包含关键字
【发布时间】:2016-10-09 17:11:58
【问题描述】:

我是机器人框架的初学者。我想使用我自己的库,导入并编写测试用例。不幸的是,我遇到了一个错误“导入库不包含关键字”。我已经在堆栈溢出中浏览了一些与此相关的帖子,但我仍然'我无法找出机器人框架中的问题。我可能正在做一些愚蠢的事情。 这是我在 python 中的代码

class ExampleLibrary(object):

    def __init__(self):        
        print "Hello"
    def hello(self):
        print "The given name"

这里是错误 [WARN] Imported library RobotFramework\TestSuite\Testclass.py' contains no keywords.

我已经把 .py 文件和测试用例放在了同一目录下。

机器人框架脚本

*** Settings ***

Library           Testclass.py

*** Test Cases ***

LibraryTest

    hello

请帮忙

提前致谢

【问题讨论】:

    标签: robotframework


    【解决方案1】:

    您的库的类名必须与文件名相同。请看一下: http://robotframework.org/robotframework/latest/RobotFrameworkUserGuide.html#creating-test-library-class-or-module

    class Testclass(object):
    
        def __init__(self):
            print "Hello"
    
        def hello(self):
            print "The given name"
    

    【讨论】:

    • 谢谢。它解决了。在给出与文档中提到的相同的文件名和模块名之后。
    【解决方案2】:

    您应该按照 Pekka 的回答或如下更改您的导入:

    *** Settings ***
    Library  ExampleLibrary.TestClass
    

    来自Documentation

    Python 类总是在一个模块中。如果实现库的类名与模块名相同,Robot Framework 允许在导入库时删除类名。例如,MyLib.py 文件中的 MyLib 类可以用作名称为 MyLib 的库。这也适用于子模块,例如,如果 parent.MyLib 模块具有类 MyLib,则仅使用 parent.MyLib 导入它就可以了。 如果模块名和类名不同,则必须同时使用模块名和类名来使用库,例如​​ mymodule.MyLibrary 或 parent.submodule.MyLib。

    【讨论】:

      猜你喜欢
      • 2018-08-14
      • 2014-03-23
      • 1970-01-01
      • 2017-11-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-10-10
      相关资源
      最近更新 更多