L'appel d'une méthode particulière de module python dans le ROBOT cadre
J'ai un module Python ayant 2 classes. Chaque classe possède un ensemble de fonctions ou des méthodes définies. Comment peut-on appeler une méthode d'une classe dans le ROBOT cadre. Je suis en train d'essayer la méthode ci-dessous cependant, ces erreurs suivantes. Quelqu'un peut-il m'aider à trouver le problème ici. Le module Python et le Robot fichiers sont dans le même chemin.J'ai essayé de changer la bibliothèque déclaration CheckCode.employé WITH_NAME xyz. Cela n'en a pas aidé. Merci.
ERRORS
==============
[ WARN ] Imported library '/homes/user/New/CheckCode.py' contains no keywords.
==============================================================================
CheckCode :: Checking small built in code
==============================================================================
Verify we can call a particular class from a Python Module in Robot | FAIL |
No keyword with name 'my_code.employee.staff info' found.
------------------------------------------------------------------------------
CheckCode :: Checking small built in code | FAIL |
1 critical test, 0 passed, 1 failed
1 test total, 0 passed, 1 failed
==============================================================================
Python Module File output
******************************
import re
import collections
import math
class person():
def __init__(self,first,last):
self.firstname = first
self.lastname = last
def emp_name(self):
return self.firstname + " " + self.lastname
class employee(person):
def __init__(self,first,last,empId):
person.__init__(self,first,last)
self.staffId = empId
def staff_info(self):
return self.Name() + " " + self.staffId
ROBOT FILE
******************************
*** Settings ***
Documentation Checking small built in code
Library BuiltIn
Library Collections
Library CheckCode.py WITH NAME my_code
*** Test Cases ***
Verify we can call a particular class from a Python Module in Robot
Log Hello World
${var} = my_code.employee.staff info Maggi Nestle 20000
*** Keywords ***
Init
Set Log Level DEBUG
Vous devez vous connecter pour publier un commentaire.
Robot ne fait pas automatiquement de créer des instances de classes qui se trouvent dans un fichier de bibliothèque, à une exception près: il va automatiquement créer une instance d'une classe, si le nom correspond au nom de fichier sans le
.py
extension. Par exemple, si votre fichierCheckCode.py
défini une classe nomméeCheckCode
, robot va automatiquement créer une instance, et, avec cet exemple, il va exposer de chaque méthode en tant que mot clé.Si vous souhaitez créer une instance d'une classe dans un fichier, vous devrez créer un mot-clé qui le fait. Par exemple:
Vous pouvez alors l'utiliser comme ceci:
Vous pouvez aussi appeler des méthodes sur l'objet avec le Appel De La Méthode mot-clé:
Il semble que vous pourriez être l'importation de la bibliothèque en utilisant le chemin d'accès physique. Afin d'importer des deux bibliothèques à partir du même module, vous devez les importer par un nom comme:
Ou dynamique:
Pour l'importation de ce genre, vous avez besoin pour obtenir votre module sur le Python path. Voir cette section pour vous aider.
De la À l'aide de chemin d'accès physique à la bibliothèque dans le guide de l'utilisateur:
L'appel d'une méthode particulière de module python dans le ROBOT cadre
Robot fichier
Fichier Python hello.py