Pytest生成html測試報告,ALLURE報告

首先老樣子安裝庫

pip install pytest-html

示例代碼

from selenium import webdriver
import random
import pytest
import time

class Test_restart(object):

    @pytest.fixture(scope="function", autouse=True)
    def setUp(self):
        global dr
        dr = webdriver.Chrome('D:\\chromedriver456.exe')
        yield
        dr.quit()

    def test_one(self):
        #dr = self.dr

        assert random.randint(1, 3) == 3

        dr.maximize_window()

        dr.get('https://www.baidu.com/')

        dr.implicitly_wait(3)

        el_text =dr.find_element_by_id('kw')
        el_text.send_keys('雪落下的聲音')

        time.sleep(1)

        el_click = dr.find_element_by_id('su')
        el_click.click()

        time.sleep(3)
        el_text.clear()
        el_text.send_keys('心跳的信號')
        time.sleep(1)
        el_click.click()

        time.sleep(5)

    def test_two(self):
        #dr = self.dr

        dr.maximize_window()

        dr.get('http://192.168.1.200:8111/#/login')

        dr.implicitly_wait(3)

        el_user = dr.find_element_by_id('username')
        el_user.send_keys('admin')

        el_pass = dr.find_element_by_id('password')
        el_pass.send_keys('111111')

        time.sleep(1)

        el_submit = dr.find_element_by_xpath(".//*[@type='submit']")
        el_submit.click()

        time.sleep(5)

        assert 1==1

按好了插件,敲好了代碼直接在命令行加個參數即可生成測試報告

pytest Test_restart.py --reruns 3 --reruns-delay 1 --html=reportname.html

默認生成的html在腳本同目錄下,可寫相對路徑,絕對路徑

pytest Test_restart.py --reruns 3 --reruns-delay 1 --html=./report/123.html

但是也可以看出它的css是額外的style文件,我們可以讓他在HTML裏面。

pytest Test_restart.py --reruns 3 --reruns-delay 1 --html=./report/123.html --self-contained-html

————————————————————————————————————————————————————————

它默認生成的是沒有描述列的,我們希望可以像unittest一樣方法前加入註解來描述此方法的含義,也可以加入截圖

https://www.cnblogs.com/linuxchao/p/linuxchao-pytest-report.html這裏會教你腫麼做

————————————————————————————————————————————————————

Allure

一個更友好的測試報告。首先需要去gihub下載

https://github.com/allure-framework/allure2/releases/tag/2.7.0

Allure是java編寫的所以需要java環境來支持,所以需要安裝jdk。

Allure安裝很簡單就配置一個環境變量即可,配置完可用--version查看是否成功

之後去安裝allure-pytest

pip install allure-pytest

安裝完成後就可以去運行腳本了,只需要在運行命令上加入參數。

生成報告

pytest Test_restart.py --alluredir reportforxml
#reportforxml是指定的目錄

生成完此目錄後,目錄中都是json文件

這時候輪到allure登場了

前面pytest -s -q --alluredir 這一步已經生產了xml格式的報告,放到了目錄下,接着執行以下命令格式

allure generate 命令生成的文件 -o 把文件轉換到的目錄/(生成html的目錄)

之後報告就生成出來了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章