python+appium自動化測試-pytest+allure測試報告(一)

來自APP Android端自動化測試初學者的筆記验夯,寫的不對的地方大家多多指教哦

之前發(fā)布的python+appium自動化測試-pytest+allure測試報告(一)這篇文章由于部分內(nèi)容有誤逞力,修改并補充后現(xiàn)在重新發(fā)布

一收夸、Allure安裝

1、pytest和allure插件安裝

pip install allure-pytest
pip install pytest

2共螺、Allure幫助文檔

<https://docs.qameta.io/allure/#_about>

3橱鹏、Allure安裝

a.scoop install allure b.使用安裝包安裝

  • allure官網(wǎng)下載:
image.png
  • allure2下載下來是一個zip的壓縮包,我們要解壓至自己的文件目錄下(可解壓放至項目的測試用例下或python安裝目錄下)糠悼,自己可找到文件即可届榄。
  • 打開allure2目錄,找到bin目錄倔喂,復(fù)制bin文件目錄铝条, 然后進行環(huán)境變量的配置,設(shè)置環(huán)境變量的目的就是讓系統(tǒng)無論在哪個目錄下都可以運行allure2席噩。
  • 環(huán)境變量設(shè)置:(桌面——我的電腦——右鍵屬性——高級系統(tǒng)配置——環(huán)境變量——系統(tǒng)變量——Path——編輯環(huán)境變量——把我們上面復(fù)制的目錄路徑新增至環(huán)境變量中即可)
image.png
  • 配置好后班缰,打開cmd終端,輸入allure悼枢,出現(xiàn)以下幫助文檔埠忘,就說明配置成功了。
image.png

若后續(xù)有新版本馒索,建議使用最新的版本

二莹妒、生成json格式的測試報告

運行環(huán)境:

  • 設(shè)備:U4AIUKFAL7W4MJLR
  • 測試app:微博APP(V10.12.0)Andriod版
  • 測試功能:賬號密碼登錄

方法一:在終端(terminal),生成json格式測試報告

終端(terminal)輸入以下內(nèi)容绰上,運行

pytest 運行的py文件 --alluredir=測試報告存放地址
例如:
pytest add_weibo_test.py --alluredir=../report/json

運行測試用例旨怠,在測試報告存放位置會生成一份或多份json或xml格式的測試報告

image.png

方法二:在測試用例配置Additional Arguments,生成json格式測試報告

1.選擇需要運行的測試用例蜈块,右鍵點擊Create Run Configuration:"測試用例文件名“

image.png

2.進入后在Additional Arguments輸入:- -alluredir=生成的json格式測試報告存放的位置

image.png

3.設(shè)置完后鉴腻,點擊APPLY→OK,在測試函數(shù)中運行測試文件

image.png

運行后在測試報告存放位置會生成一份或多份json或xml格式的測試報告

image.png

三百揭、測試報告由json格式轉(zhuǎn)換為html格式

在終端(terminal)轉(zhuǎn)換

1.測試用例運行完成生成json格式的測試報告后爽哎,打開terminal,輸入命令:

allure generate ./report/ -o ./report/html --clean

./report/:表示執(zhí)行需要轉(zhuǎn)換的文件所在的位置器一,需要轉(zhuǎn)換的文件在report文件夾中
./report/html:表示轉(zhuǎn)換成功的html文件存放的位置课锌,即存放在report下的html文件夾中
--clean:表示清除之前的測試報告,因為重復(fù)生成相同的測試報告會報錯

注意:在terminal可以通過cd返回上一級或進入其它文件

2.執(zhí)行完成后盹舞,在report文件夾下會生成一個html文件产镐,在html目錄下會生成index.html文件隘庄,即為可視化報告,如下圖所示

image.png

3.打開html文件癣亚,右鍵點擊index.html文件丑掺,選擇open in Broswer,選擇Chrome瀏覽器述雾,如下圖

image.png

4.谷歌瀏覽器打開后的測試報告圖片呈現(xiàn)為下圖:

image.png

四街州、Allure相關(guān)注解

1.@allure.feature:用于描述被測試產(chǎn)品需求

2.@allure.story:用于描述feature的用戶場景,即測試需求玻孟,與feature是父子關(guān)系

3.@allure.title:用戶描述測試用例的標題唆缴,不設(shè)置默認為用例名稱

4.@allure.description:用于對測試用例的一些附加描述

5.@allure.step:用于將一些通用的函數(shù)作為測試步驟輸出到報告,調(diào)用此函數(shù)的地方會向報告中輸出步驟

  • with allure.step:用于描述測試步驟黍翎,將會輸出到報告中
  • allure.attach:用于向測試報告中輸入一些附加的信息面徽,通常是一些測試數(shù)據(jù),截圖等

代碼如下:

# 手機賬號密碼登錄測試用例
import allure
import pytest
from common.init import AppStart

@allure.feature("這是測試feature")
class TestAccountPwd:
    def setup_class(self):
        self.account_login_page = AppStart.start().enter_account_login()

    @allure.story("story_one")
    @allure.title("title_one")
    def test_one(self):
        with allure.step("step--輸入賬號"):
            allure.attach("123123231321313", "賬號")
            account = "123123231321313"
        with allure.step("step--輸入密碼"):
            pwd = "asdfgh"
            self.account_login_page.input_account_pwd(account, pwd)
        with allure.step("step--斷言"):
            allure.attach("手機格式有問題匣掸,若非中國大陸手機號碼請點擊國際手機登錄", "期望結(jié)果")
            assert self.account_login_page.get_bounced_context() == "手機格式有問題趟紊,若非中國大陸手機號碼請點擊國際手機登錄"
            print("\\naccount的值:", account, "\\npwd的值:", pwd)

    @allure.story("story_two")
    @allure.title("title_two")
    @allure.step("這是測試step")
    def test_two(self):
        account = "w124hhh77"
        pwd = "asdfg"
        self.account_login_page.input_account_pwd(account, pwd)
        assert self.account_login_page.get_bounced_context() == "你尚未注冊微博,是否立即注冊"
        print("\\naccount的值:", account, "\\npwd的值:", pwd)

    @allure.story("story_three")
    @allure.title("title_three")
    def test_three(self):
        account = "hhhhhhhhh"
        pwd = "asdfg"
        self.account_login_page.input_account_pwd(account, pwd)
        assert self.account_login_page.get_bounced_context() == "你尚未注冊微博碰酝,是否立即注冊"
        print("\\naccount的值:", account, "\\npwd的值:", pwd)

    @allure.story("story_four")
    @allure.title("title_four")
    @allure.description("description")
    def test_four(self):
        account = "15059941156"
        pwd = "123123"
        self.account_login_page.input_account_pwd(account, pwd)
        assert self.account_login_page.get_account_pwd_tips() == "帳號或密碼錯誤"
        print("\\naccount的值:", account, "\\npwd的值:", pwd)

    def teardown_class(self):
        AppStart.quit()

if __name__ == '__main__':
    pytest.main(["account_pwd_test.py"])

1.@allure.feature霎匈、@allure.story、@allure.title結(jié)果如下:

image.png

2.@allure.description結(jié)果如下

image.png

3.@allure.step結(jié)果如下:

image.png

4.with allure.step和allure.attach結(jié)果如下:

image.png
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末送爸,一起剝皮案震驚了整個濱河市铛嘱,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌袭厂,老刑警劉巖墨吓,帶你破解...
    沈念sama閱讀 211,123評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異嵌器,居然都是意外死亡肛真,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,031評論 2 384
  • 文/潘曉璐 我一進店門爽航,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人乾忱,你說我怎么就攤上這事讥珍。” “怎么了窄瘟?”我有些...
    開封第一講書人閱讀 156,723評論 0 345
  • 文/不壞的土叔 我叫張陵衷佃,是天一觀的道長。 經(jīng)常有香客問我蹄葱,道長氏义,這世上最難降的妖魔是什么锄列? 我笑而不...
    開封第一講書人閱讀 56,357評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮惯悠,結(jié)果婚禮上邻邮,老公的妹妹穿的比我還像新娘。我一直安慰自己克婶,他們只是感情好筒严,可當我...
    茶點故事閱讀 65,412評論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著情萤,像睡著了一般鸭蛙。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上筋岛,一...
    開封第一講書人閱讀 49,760評論 1 289
  • 那天娶视,我揣著相機與錄音,去河邊找鬼睁宰。 笑死歇万,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的勋陪。 我是一名探鬼主播贪磺,決...
    沈念sama閱讀 38,904評論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼诅愚!你這毒婦竟也來了寒锚?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,672評論 0 266
  • 序言:老撾萬榮一對情侶失蹤违孝,失蹤者是張志新(化名)和其女友劉穎刹前,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體雌桑,經(jīng)...
    沈念sama閱讀 44,118評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡喇喉,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,456評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了校坑。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片拣技。...
    茶點故事閱讀 38,599評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖耍目,靈堂內(nèi)的尸體忽然破棺而出膏斤,到底是詐尸還是另有隱情,我是刑警寧澤邪驮,帶...
    沈念sama閱讀 34,264評論 4 328
  • 正文 年R本政府宣布莫辨,位于F島的核電站,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏沮榜。R本人自食惡果不足惜盘榨,卻給世界環(huán)境...
    茶點故事閱讀 39,857評論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望蟆融。 院中可真熱鬧草巡,春花似錦、人聲如沸振愿。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,731評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽冕末。三九已至萍歉,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間档桃,已是汗流浹背枪孩。 一陣腳步聲響...
    開封第一講書人閱讀 31,956評論 1 264
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留藻肄,地道東北人蔑舞。 一個月前我還...
    沈念sama閱讀 46,286評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像嘹屯,于是被迫代替她去往敵國和親攻询。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 43,465評論 2 348

推薦閱讀更多精彩內(nèi)容