1. 程式人生 > >Python + Allure(報告)+ Jenkins(持續整合)介面自動化測試環境搭建

Python + Allure(報告)+ Jenkins(持續整合)介面自動化測試環境搭建

(這個是內部分享文件,側重於測試報告的生成以及持續整合,至於介面框架的內部組織可以按照自己的想法來實現,有問題歡迎留言)

1.環境:
• 作業系統:windows 64位
• 軟體環境:python3.4.4;jdk1.8;jenkins1.65

2.基本環境配置:
• python 新增到系統變數
• jdk環境配置(注意,jdk安裝路徑中不要包含括號、空號,否則執行allure命令時會報 此時不應有 \java\jdk1.8.0_111 錯誤,原因是allure的bat檔案解析java home的時存沒有處理)
• jenkins安裝

3.第三方庫安裝
• pytest安裝:在cmd命令下使用 pip install pytest ;
測試:在python 語言環境下import pytest 如果未報錯表示安裝成功

• pytest_allure_adaptor安裝:在cmd命令下使用 pip install pytest_allure_adaptor
安裝pytest_allure_adaptor注意事項
pytest_allure_adaptor依賴一些python的第三方庫,其中lxml庫在安裝過程中容易出現 error: Microsoft Visual C++ 10.0 is required (Unable to find vcvarsall.bat).導致整個安裝失敗。
原因:是python安裝編譯會呼叫本版本所用編譯器進行編譯。所以關鍵是找到正確的編譯器以及commontools路徑。2.7版本使用VS9編譯,對於3.4版本,是使用VS10編譯的.

解決辦法:
1.在cmd命令下執行 pip install wheel
2.在http://www.lfd.uci.edu/~gohlke/pythonlibs/#lxml 下載對應的,一定要是和python版本+系統版本對應的的lxml*.whl檔案(如:lxml-3.4.4-cp34-none-win_amd64.whl 注意:3.4.4表示lxml版本;cp表示python版本;amd64表示系統環境64位)
3.pip install lxml*.whl

• 其他庫的安裝:都可以使用pip install 庫名稱

4.生成allure所需要的測試結果檔案
• 在cmd命令執行測試程式碼:py.test 測試用例目錄 –alluredir=./allure-result
生成allure所需要的測試結果檔案
py.test 測試用例目錄 –alluredir=./allure-result
其中 –alluredir 表示生成測試結果儲存路徑; ./allure-result 表示當前路徑下的allure-result檔案下;在生成報告前會將報告存放路徑下的資料夾清空

• 使用allure執行工具生成報告
使用allure工具生成報告
在allure執行工具的bin目錄下對於linux與windows都有對應的指令碼支援。
使用方法:
前提:執行測試後生成了對應xml結果檔案,如 allure-result
生成測試報告:在cmd命令列中使用 allure generate allure-result 執行後會在該目錄下生成allure-report檔案,再使用allure report open 可以在本地檢視報告.(備註:allure的報告需要有Server伺服器apache、tomcat、jetty等才能被檢視)
(在cmd命令下使用 allure help 可以檢視詳細的引數說明)

5.用例中使用allure(需要 import allure):
• 在報告中增加步驟顯示,如下:使用 with pytest.allure.step(‘描述’): or with allure.step(‘描述’):
在報告中增加步驟顯示

    @pytest.allure.testcase("http://www.qq.com")
    def test_steps_demo(self):
        with pytest.allure.step('step one'):
            driver = webdriver.Chrome()
            driver.get('http://www.baidu.com')
        with pytest.allure.step('step two'):
            driver.find_element_by_id('kw').send_keys('hello')
            driver.find_element_by_id('su').click()
            time.sleep(5)
        with pytest.allure.step('step three'):
            driver.save_screenshot("b.png")
            f = open('./b.png','rb').read()
            allure.attach('this is a img',f,allure.attach_type.PNG)
        with pytest.allure.step('step four'):
            driver.quit()

• 在報告中增加額外的資訊:allure.attach(’arg1’,’arg2’,’arg3’):
arg1:是在報告中顯示的名稱
arg2:表示新增的內容
arg3:表示新增的型別(支援型別:HTML,JPG,PNG,JSON,OTHER,TEXTXML)
向報告中新增額外資訊
allure.attach(‘this is a attach’,’llllllll llllll aaaaa’)
往報告中新增圖片
f = open(‘./b.png’,’rb’).read()
allure.attach(‘this is a img’,f,allure.attach_type.PNG)

• 新增環境資訊(注:建議放到一個用例中)
新增環境資訊
allure.environment(report=’Allure report’,browser=’chrome’,version=’JiuYiBao2.0.6’)

• 利用Feature 和 Story 組織用例,如:一個大模組M 下包含幾個小模組A、B、C ;可以將M 設定為Feature,A、B、C 設定為不同的Story
新增Featrue和Story

@allure.feature('Feature1')
@allure.story('Story1')
def test_mminor():
    assert Fals

6.整合jenkins
• jenkins 分別安裝外掛 Allure Jenkins Plugin 、HTML Publisher plugin
• 在系統設定中將JDK / Maven 等其他一些基本配置(建議jdk版本1.8)
• 在jenkins中新增allure執行工具

jenkins新增allure執行工具
1.先下上面提到的allure執行的壓縮檔案(allure-commandline.zip)
2.在jenkins的系統配置—–Allure Commandline —-去掉自動安裝勾選框—-填寫name及剛下載的資料夾的根目錄路徑
3.點選儲存

• 新建job,在job中新增步驟 Allure report(Results:第一行表示xml檔案的路徑;第二行表示生成報告的路徑)
目前做法
目前job的整個流程:
1.構建時,從svn上拉取最新的測試程式碼
2.執行測試指令碼並且生成allure需要xml結果檔案
3.通過Allure report生成測試報告

4.設定問題追蹤
(在Allure Report 下選擇增加:Key: allure.issues.tracker.pattern Value: http://tracker.company.com/%s)

• 由於jenkins1.5.2以上版本對外掛的安全性做了限制必須要在jenkins —統管理–指令碼命令列中執行程式碼
執行許可權程式碼
System.setProperty(“hudson.model.DirectoryBrowserSupport.CSP”, “default-src ‘self’; script-src ‘self’ ‘unsafe-inline’ ‘unsafe-eval’; style-src ‘self’ ‘unsafe-inline’;”)

相關推薦

Python + Allure報告+ Jenkins持續整合介面自動化測試環境搭建

(這個是內部分享文件,側重於測試報告的生成以及持續整合,至於介面框架的內部組織可以按照自己的想法來實現,有問題歡迎留言) 1.環境: • 作業系統:windows 64位 • 軟體環境:python3.4.4;jdk1.8;jenkins1.65

手機自動化測試環境搭建eclipse+python+uiautomator

list fig finish java環境 pda 所有 開發 界面 自己 最近在公司做了一個階段的手機APP自動化測試,是在已有的環境基礎上進行腳本開發,所有對基礎的環境搭建不是很清楚,後來自己閑來無事就在家裏搭建了一下下,接下來和大家分享一下搭建過程。 一:搭建手機A

Appium+python移動端自動化測試-環境搭建

過程 .com oid pytho 安裝環境 測試 ID alt ppi 搭建所在系統環境:Windows7版本64位系統 一、環境準備 jdk8.0.151 android-sdk_r20.3.4-windows python3.5 appium1.4.16

Selenium終極自動化測試環境搭建:Selenium+Eclipse+Python

前面舉例了Selenium+Eclipse+Junit+TestNG自動化測試環境的搭建,在前一篇的基礎上,下面再舉例Selenium+Eclipse+Python測試環境搭建。  第一步:安裝Python  根據下面的地址,直接一鍵安裝,全部預設方式。    安裝到C:\Python27,設定Python

Appium+Python移動端Android自動化測試環境搭建經典詳細

據說,appium+python環境的搭建90%的人在痛苦中掙扎,在掙扎中放棄,在放棄後重新開始,只有10%的人,人品極好,極具正能量,能夠很快並順利的搭建成功(此時你在想什麼?......) 一、安裝JDK 下載好jdk安裝包後直接下一步直至安裝完成即可,安裝完JD

Web自動化測試環境搭建1基於firefox火狐瀏覽器

ktr gecko 激情 後臺 自動更新 fire 這一 把手 HA   自動化測試是時代趨勢,因此很多測試人員開始研究自動化測試,web自動化測試化測試並不難,但是很多人都是被擋在了環境搭建這一步,後面學習激情全無,這裏,韜哥手把手教大家搭建火狐瀏覽器下的自動化測試環境(

Python Web專案中使用Jenkins進行持續整合CI

轉載原文:http://www.hustlzp.com/post/2014/08/jenkins 在一個專案的開發過程中,往往會有一些需要反覆執行的操作,比如編譯、測試、部署。具體於Flask專案,我一般使用nose執行單元測試、fabric進行部署、pylint執行程式碼質量檢測等。這些頻繁需要執行

Python Web專案中使用Jenkins進行持續整合

在一個專案的開發過程中,往往會有一些需要反覆執行的操作,比如編譯、測試、部署。具體於Flask專案,我一般使用nose執行單元測試、fabric進行部署、pylint執行程式碼質量檢測等。這些頻繁需要執行的步驟,是非常枯燥的,那何不交給機器來自動執行呢?最近,我參與的一個

Python3+Selenium2完整的自動化測試框架實現自動化測試環境搭建

添加 在線安裝 自動化 eight str rain 中間 自動打開 發的 1 環境搭建準備 (1) 下載Python3版本的安裝包,直接官網下載即可:Python官網:https://www.python.org/ (2) 下載Python的基礎工具包

jenkins+jmeter+maven介面自動化測試框架搭建【HTML 報告展示】

1.maven專案中建立/src/jmeter/resources路徑,將jmeter中的extras路徑下如下模板檔案複製到maven專案中的/src/jmeter/resources路徑下(也可以根據自己的需要下載其他目標放在這個路徑下即可) 2.pom檔案中新

python+selenium 自動化測試環境搭建

python selenium 自動化測試 軟件測試selenium 是一個web的自動化測試工具,不少學習功能自動化的同學開始首選selenium ,相因為它相比QTP有諸多有點:* 免費,也不用再為破解QTP而大傷腦筋* 小巧,對於不同的語言它只是一個包而已,而QTP需要下載安裝1個多G 的程序。*

Selenium Python自動化測試環境搭建

一.需要使用的工具 1.瀏覽器(Firefox、Chrome、IE) 2.Python(Python2或Python3) 3.Selenium 4.瀏覽器驅動(geckodriver、chromedriver、IEDriverServer) 5.IDE(Eclipse、Pychram等) 6.資料

持續整合CI與自動化測試 from

from:https://www.cnblogs.com/wintersun/p/6285815.html                 

Jmeter+Ant+Jenkins介面自動化測試框架搭建for Windows

前言 軟體開發的V模型大家都不陌生,其中測試階段分為單元測試→功能測試→系統測試→驗收測試。其中單元測試一般由開發同學們自己完成,大部分測試具體實施(這裡不包括用例設計)是從單體功能測試開始著手的。 如果測試一個功能,發現主流程無法走下去,也就是介面不通,這時再打回去開發手裡繼續改,改

Appium&Python自動化測試-環境搭建之安卓SDK

結果 gree index ase 環境變量配置 模擬器 https 變量 android 一、安裝包工具準備: jdk1.8.0(64 位) installer_r24.4.1-windows-androidSDK 二、JDK的安裝及配置 官方下載地址:htt

Mac&Appium&Python自動化測試-環境搭建之安卓SDK

一、摘要 本博文將詳細講述在Mac環境下的jdk安裝、配置以及環境校驗;安卓sdk安裝、配置以及環境校驗 二、安裝包工具準備: jdk1.8.0(64 位) android-sdk_r24.4.1-mac osx.zip 三、JDK的安裝及配置 官方下載地址:https://www

selenium + python+webdriver+pycharm自動化測試環境搭建

1.下載安裝Python https://www.python.org/downloads/release/python-351/   根據自己的作業系統32/64 位,選擇相應的版本。 安裝時:(勾選上 Add Python3.5 to PATH

selenium+ant+jenkins整合自動化測試環境搭建

上一篇文章(https://mp.csdn.net/postedit/82388339),主要分享的是selenium自動化測試基本的測試環境的搭建,能夠正常的在eclipse中編寫用例和執行用例。 實際工作中,我們的自動化指令碼基本都是下班時無人值守執行,執行完成之後,並

搭建基於IDEA+Selenium+Java+TestNG+Maven+Jenkins+SVN的Web端UI自動化測試環境

第一步:工具下載安裝配置 第二步:整合各個工具到自動化測試環境 1.IDEA上的各種操作 a.通過在idea工具,新建一個maven專案,在右邊載入框這裡,選擇maven-archetype-quickstart,然後點選next b.輸入Group Id:域.公司簡稱;Artifact Id:專案名稱

持續整合CI與自動化測試

------------------------------