Доступ к переменной класса python из Robot Framework - PullRequest
0 голосов
/ 07 января 2019

У меня есть файл Python, например, Animals.py, внутри я определил 3 разных класса:

#Animals.py
class Animal:
    listAnimal=["dog","cat"] #<------------
    def __init__(self):
        #Animal constructor
        pass

class Dog(Animal):
    def __ini__(self):
        #dog constructor
        pass
class Cat(Animal):
    def __ini__(self):
        #cat constructor
        pass

Я хотел бы получить доступ к переменной класса listAnimal

Я не эксперт по РФ, я пытался использовать это:

Import Library   Animal
${ListAnimal}   Animal.listAnimal

Не могли бы вы дать какое-нибудь предложение по этому поводу?

Ответы [ 2 ]

0 голосов
/ 07 января 2019

Я добавил новую функцию в файл Animals.py

def getListAnimals():
    return Animal.listAnimal

И теперь я использую только эту функцию в рамках робота:

Import Library   Animals.py
${ListAnimal}   Get List Animals
0 голосов
/ 07 января 2019

Вы можете использовать ключевое слово Получить экземпляр библиотеки из библиотеки BuiltIn, чтобы получить активный в данный момент экземпляр указанной тестовой библиотеки. Затем вы можете использовать Расширенный синтаксис переменной для доступа к списку и его элементам.

Пример:

${lib}=     Get Library Instance    Animal
Log     ${lib.listAnimal[0]}    # should log 'dog'
Log     ${lib.listAnimal[1]}    # should log 'cat'
${ListAnimal}=    Set Variable   ${lib.listAnimal}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...