我已經爲Robot Framework(myapi.py)製作了一個庫。如果我把它放在與我的機器人測試相同的目錄中,我可以像這樣導入庫:導入的庫'owaspapi'不包含關鍵字。 (如果它使用點安裝)
Library myapi.py
它工作得很好。
但是,我使庫pip可以安裝,以便其他人可以輕鬆地將其用於其他項目。圖書館用pip安裝得很好。我也改變了機器人測試導入這樣的庫:當我運行機器人的測試,我得到警告
Library myapi
:
[WARN]導入庫「myapi」不包含關鍵字。
這裏的(PIP安裝)的庫文件結構:
setup.py
myapi
\__init__.py
\myapi.py
\version.py
的setup.py內容是:
from setuptools import setup, find_packages
exec(open('myapi/version.py').read())
setup(
name='myapi',
version=__version__,
packages=['myapi'],
install_requires=['requests']
)
的初始化的.py內容是:
from .version import __version__
The version.py內容是:是(僅包括第一功能我有)
__version__ = '1.1.0'
的myapi.py內容:
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
和機器人試驗(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
我不知道如果庫位於機器人測試旁邊,它是否工作的很好,如果我將它安裝成pip,我會丟失什麼...?爲什麼它會抱怨沒有關鍵字?
您是否嘗試過開放交互式解釋,然後安裝後它導入你的包?試試看,並確認你輸入的東西是a)已安裝的軟件包,b)有你認爲它應該具有的功能。 –
這是一個惡作劇的想法。一旦我嘗試過,我注意到那些在交互式解釋器中也不起作用。原因是@ a-kootstra的評論。 –