J'ai créé une bibliothèque pour Robot Framework (myapi.py). Si je le place dans le même répertoire avec mon test de robot que je peux importer la bibliothèque comme ceci:La bibliothèque importée 'owaspapi' ne contient aucun mot-clé. (s'il est installé avec pip)
Library myapi.py
Il fonctionne très bien.
Cependant, j'ai installé la bibliothèque pip pour que d'autres personnes puissent facilement l'utiliser dans d'autres projets. La bibliothèque s'installe très bien avec pip. J'ai aussi changé le test de robot pour importer la bibliothèque comme ceci:
Library myapi
Quand je lance le test du robot, je me avertissement:
[WARN] bibliothèque importée 'MyApi' ne contient pas de mots-clés.
est ici le (pip installable) structure de fichier de bibliothèque:
setup.py
myapi
\__init__.py
\myapi.py
\version.py
Le contenu setup.py est:
from setuptools import setup, find_packages
exec(open('myapi/version.py').read())
setup(
name='myapi',
version=__version__,
packages=['myapi'],
install_requires=['requests']
)
La initialisation contenu .py est:
from .version import __version__
Le contenu version.py est:
__version__ = '1.1.0'
Le contenu est myapi.py (inclus uniquement la première fonction que j'ai):
import requests
import time
from time import strftime
import urllib2
__all__ = ['create_new_MY_session']
def create_new_MY_session():
session_name = strftime('my_session_%S_%H_%M_%d_%m_%Y')
r = requests.get("http://localhost:8080/JSON/core/action/newSession/?zapapiformat=JSON&name=" + session_name + "/'")
print ("Creating new session: " + session_name + ". Status code...")
print (r.status_code)
assert (r.status_code) == 200
Et enfin, le début du test de robot (de login.robot):
*** Settings ***
Suite Setup Open Firefox With Proxy
Suite Teardown Close Browser
Library mypapi
Library OperatingSystem
Library Selenium2Library
Resource ws_keywords/product/webui.robot
*** Test Cases ***
MY Start New MY Session
Create New MY Session
Je me demande si la bibliothèque fonctionne très bien lorsqu'il est situé juste à côté du test de robot, ce que je manque si je fais pip installable ...? Pourquoi se plaint-il qu'il n'y a pas de mots-clés?
Avez-vous essayé d'ouvrir un interpréteur interactif puis importer votre paquet après qu'il a été installé? Essayez cela, et vérifiez que la chose que vous avez importé est a) le paquet installé, et b) a la fonction que vous pensez qu'il devrait avoir. –
C'était une idée de goo. Une fois que j'ai essayé, j'ai remarqué que ceux-ci ne fonctionnaient pas non plus en interpréteur interactif. Et la raison en est venue dans le commentaire de @ a-kootstra. –