Gewusst wie: übergeben Sie Objekte, um keywords in robot framework?

Habe ich eine python-Klasse MyClass geschrieben in der Datei MyClass.py:

class MyClass(object):
    def __init__(self):
        self.myvar = list()

    def setvar(self, val):
        self.myvar = val

    def mymethod(self):
        return self.myvar

Habe ich importiert in Robot Framework wie folgt:

Library         MyClass    WITH NAME    my_component

Ich habe auch ein Schlüsselwort, mit dem Aufruf einer Methode von Objekten, die an ihn übergeben werden:

testing component
    [Arguments]       ${cmp}
    log to console    ************* ${cmp}
    ${result} =       ${cmp}.mymethod

Ich habe mehrere Objekte instantiiert von Klasse MyClass und jedes Objekt hat unterschiedliche Eigenschaften. Ich möchte zu Holen Ihre Attribute mit testing component keyword, unabhängig von dem Objekt selbst.

Wenn ich rufe testing component vorbei my_component:

Test Method Call
    testing component    my_component

Bekomme ich:

No keyword with name '${cmp}.mymethod' found.

Wenn ich rufe, auf diese Weise im keyword -testing component:

${result} =    call method     ${cmp}   mymethod

Bekomme ich:

Object 'my_component' does not have method 'mymethod'.

Ich habe auch versucht call method my_component mymethod für den test und ich war wieder Object 'my_component' does not have method 'mymethod'..

Aber wenn ich ${result} = my_component.mymethod funktioniert alles einwandfrei.

  • Tut MyClass.py definieren eine Klasse mit dem Namen MyClass? Oder ist MyClass.py ein einfaches Modul mit Funktionen?
  • überprüfen Sie bitte mein edit auf die Frage
InformationsquelleAutor Sara Sarvi | 2016-10-25
Schreibe einen Kommentar