电竞比分网-中国电竞赛事及体育赛事平台

分享

robot framework

 小豬窩969 2015-05-27

   這幾天本想研究下用robotframework+HTTP library (Requests)來(lái)做接口測(cè)試(http協(xié)議), 安裝完Requests庫(kù)后,在RIDE里導(dǎo)入該庫(kù)時(shí)顯示是紅色,即導(dǎo)入失敗(正常導(dǎo)入應(yīng)該顯示為黑色),網(wǎng)上也沒(méi)有搜索到有用的信息,于是這幾天就不停的在公司的電腦和家里的電腦上反復(fù)折騰。今天在家休息,繼續(xù)折騰,功夫不負(fù)有心人,終于搞定了,在此記錄下。


一、問(wèn)題現(xiàn)象描述:


  我電腦上本來(lái)安裝的有robotframework+Selenium2Library環(huán)境(robot framework環(huán)境搭建),于是我直接在命令行運(yùn)行:pip install -U robotframework-requests  來(lái)安裝RequestsLibrary,然后用RIDE導(dǎo)入時(shí),如下圖,Selenium2Library他DatabaseLibrary都是正常的,偏偏RequestsLibrary是紅色的。




二、問(wèn)題解決過(guò)程:


首先,我懷疑安裝的有問(wèn)題,于是到安裝目錄(我的是:C:\Python27\Lib\site-packages)下查看是否存在RequestsLibrary庫(kù),發(fā)現(xiàn)該目錄下存在下面兩個(gè)安裝文件夾:



  •   RequestsLibrary


  •   robotframework_requests-0.3.8-py2.7.egg-info



  安裝的應(yīng)該沒(méi)問(wèn)題,安裝沒(méi)問(wèn)題那是什么有問(wèn)題?我懷疑是與環(huán)境安裝有關(guān)。


于是,為了排除一切可能的X因素,我就把電腦上之前安裝的的環(huán)境全部卸載干凈后,全部在重新安裝。可惜這次安裝完成后,問(wèn)題依然沒(méi)有解決。不過(guò)問(wèn)題雖然沒(méi)有解決,但可以排除與安裝包和環(huán)境沒(méi)有關(guān)系。到這時(shí)我又開(kāi)始懷疑是缺少某個(gè)依賴包。(開(kāi)源的就是這樣, 安裝時(shí)會(huì)依賴很多其它的包)


最后,RIDE有個(gè)Import Failed Help功能(上圖中紅色框的部分),點(diǎn)擊一下這個(gè)按鈕,彈出如下圖提示,說(shuō)的還是挺詳細(xì)的:


  1、導(dǎo)入失敗顯示紅色


  2、可以在  Tools / View RIDE Log  下查看詳細(xì)的失敗日志。


  3、。。。




根據(jù)上面第2點(diǎn)找到的錯(cuò)誤日志:


復(fù)制代碼

20150503 08:38:55.590 [INFO]: Started RIDE 1.3 using python version 2.7.8 with wx version 2.8.12.1 in win32.20150503 08:38:59.105 [WARN]: Importing test library "RequestsLibrary" failed

Traceback (most recent call last):Importing test library 'RequestsLibrary' failed: ImportError: No module named requestsTraceback (most recent call last):
  File "C:\Python27\lib\site-packages\RequestsLibrary\__init__.py", line 1, in <module>from RequestsKeywords import RequestsKeywords
  File "C:\Python27\lib\site-packages\RequestsLibrary\RequestsKeywords.py", line 1, in <module>import requests
PYTHONPATH:
  C:\Python27\lib\site-packages\robotide\lib\robot\libraries
  C:\Python27\lib\site-packages\robotide\lib
  C:\Python27\lib\site-packages\wx-2.8-msw-unicode
  C:\Python27\lib\site-packages\wx-2.8-msw-unicode
  C:\Python27\lib\site-packages\setuptools-5.4.1-py2.7.egg
  C:\Python27\lib\site-packages\pip-6.1.1-py2.7.egg
  C:\Windows\system32\python27.zip
  D:\Program Files\VisualSVN Server\bin
  D:\Program Files\VisualSVN Server\PythonPackages
  C:\Python27\DLLs
  C:\Python27\lib
  C:\Python27\lib\plat-win
  C:\Python27\lib\lib-tk
  C:\Python27
  C:\Python27\lib\site-packages
  .
  C:\Users\Administrator\Desktop
  C:\Python27\lib\site-packages\robotide\spec
  File "C:\Python27\lib\site-packages\robotide\spec\librarymanager.py", line 76, in _fetch_keywordsreturn get_import_result(path, library_args)
  File "C:\Python27\lib\site-packages\robotide\spec\libraryfetcher.py", line 20, in get_import_result
    lib = TestLibrary(path, args)
  File "C:\Python27\lib\site-packages\robotide\lib\robot\running\testlibraries.py", line 37, in TestLibrary
    libcode = importer.import_class_or_module(name)
  File "C:\Python27\lib\site-packages\robotide\lib\robot\utils\importer.py", line 64, in import_class_or_module
    self._raise_import_failed(name, err)
  File "C:\Python27\lib\site-packages\robotide\lib\robot\utils\importer.py", line 102, in _raise_import_failed
    raise DataError('\n'.join(msg))

復(fù)制代碼


問(wèn)題終于找到了,原來(lái)是少了 requests,安裝地址https://pypi./pypi/requests


命令行窗口運(yùn)行:pip install requests


再次用RIDE導(dǎo)入RequestsLibrary,成功:




開(kāi)啟愉快的研究之旅了。。。。。。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多