日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

第七章 移动自动化持续化集成(下)

發(fā)布時間:2025/4/16 编程问答 17 豆豆
生活随笔 收集整理的這篇文章主要介紹了 第七章 移动自动化持续化集成(下) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

? ? ? ? ? ? --------手機自動化之Appium

(4)增加構(gòu)建步驟,這是如何執(zhí)行我們項目工程的命令,如:python src/TestSuites/OnlineTestSuite.py。構(gòu)建的時候就會執(zhí)行這個命令,執(zhí)行測試用例代碼,同時我們要構(gòu)建后的操作,就是測試用例執(zhí)行失敗后的郵件通知。單擊保存按鈕,保存所有設(shè)置。如圖7.3.4所示:

        圖7.3.4 增加構(gòu)建操作的構(gòu)建后操作

(5)運行測試用例之前,我們需要先將執(zhí)行測試用例的手機連接到服務(wù)器上,通過adb devices –l能查看到手機的信息。運行appium的服務(wù)端,當(dāng)服務(wù)端啟動成功后,方可進行其他的操作。

(6)構(gòu)建我們剛剛創(chuàng)建的job,返回項目首頁,單擊左側(cè)的“立即構(gòu)建”按鈕,構(gòu)建我們的工程。當(dāng)然此時,Appium服務(wù)端會有日志輸出,同時測試用例在我們的測試手機上開始執(zhí)行。如圖:7.3.5所示:


圖7.3.5 構(gòu)建工程

(7)構(gòu)建成功后,jenkins會根據(jù)測試用例的執(zhí)行情況來置相應(yīng)的狀態(tài)。

7.4 Jenkins接入時問題解析

?? 細心的同學(xué)可能發(fā)現(xiàn)了,將我們第六章的自動化測試工程接入Jenkins中后,不管是測試用例運行是否通過,Jenkins返回都是正常的,這不科學(xué)啊?所以這里面還是存在著一些兒問題的,那我們現(xiàn)在就逐一解析一下。

一,? 測試用例運行失敗了,Jenkins不會報告,依然是成功的標(biāo)志。

?? 針對這個問題,我們要了解Jenkins的狀態(tài)設(shè)置的原理。Jenkins是根據(jù)我們在構(gòu)建步驟中填寫的命令的執(zhí)行狀態(tài)來置成功或是失敗的,可是這就和unittest這個框架結(jié)合起來了。我們用unittest運行測試用例的時候,它會收集測試用例的執(zhí)行情況。如果成功了就是一個句號,如果失敗了就是F,而unitest框架框架最后執(zhí)行結(jié)束后返回的永遠是0。而有Jenkins來檢測的時候,0代表成功,1代表失敗。

? 所以如果我們想要在測試用例執(zhí)行有失敗的情況下,Jenkins會報錯的話,需要修改一下Unittest的運行,將suite文件的內(nèi)容改變成下面的樣子:

#-*- coding: UTF-8 -*-

'''

Created on 2015-12-18

?

@author: 58

'''

import unittest

import sys

import os

sys.path.append("..")

sys.path.append(os.getcwd()+"/src/")

from TestCases.LoginTest import LoginTest

from TestCases.RegViewTest import RegViewTest

from TestCases.IndexViewTest import IndexViewTest

class OnlineTestSuite():

??? def test(self):

??????? if __name__ == "__main__":

??????????? #構(gòu)造測試集?????????????

??????????? suite = unittest.TestSuite()?

??????????? suite.addTest(LoginTest('test_login'))

????????? ??suite.addTest(IndexViewTest('test_indexview'))

??????????? suite.addTest(RegViewTest('test_reg'))

?????????? ?runner = unittest.TextTestRunner()?

??????????? result=runner.run(suite)

???? ???????#如果有測試用例執(zhí)行失敗,則返回1

??????? if (not result.wasSuccessful()):

??????????????? exit(1)

??????? if __name__ == '__main__':

OnlineTestSuite().test()

二,沒有具體的測試報告,不能詳細看到每個測試用例的執(zhí)行情況。

Unittest不會產(chǎn)生類似于testNG那樣的報告,所以我們需要借助于第三方的模塊。而Python下產(chǎn)生測試報告的模塊叫HTMLTestRunner,通過這個模塊來運行測試用例就能產(chǎn)生報告。當(dāng)然我們就需要修改TestSuite文件,用HTMLTestRunner運行測試用例,修改后的代碼如下:

import unittest

import sys

import os

import HTMLTestRunner

sys.path.append("..")

sys.path.append(os.getcwd()+"/src/")

from TestCases.LoginTest import LoginTest

from TestCases.RegViewTest import RegViewTest

from TestCases.IndexViewTest import IndexViewTest

class OnlineTestSuite():

??? def test(self):

??????? if __name__ == "__main__":

??????????? #構(gòu)造測試集?????????????

??????????? suite = unittest.TestSuite()?

??????????? suite.addTest(LoginTest('test_login'))

??????? ????suite.addTest(IndexViewTest('test_indexview'))

??????????? suite.addTest(RegViewTest('test_reg'))

??????????? #定義個報告存放路徑,支持相對路徑。

??????????? filename='./report.html'

??????????? fp=file(filename,'wb')

??????????? runner=HTMLTestRunner.HTMLTestRunner(stream=fp,title=u'APP Auto Test Report',description=u'App AutoTest onLine!')

??????????? result=runner.run(suite) #自動進行測試

??????????? if (not result.wasSuccessful()):

??????????????? exit(1)?????

if __name__ == '__main__':

OnlineTestSuite().test()

?

運行這個TestSuite文件后,就能產(chǎn)生一個測試報告,測試執(zhí)行樣式如圖7.4.1所示:

?


????????????????????????? 圖7.4.1 測試報告

三 其他的高級應(yīng)用???

Jenkins可以定制很多其他應(yīng)用,如定時執(zhí)行job,觸發(fā)式執(zhí)行job,將我們的測試報告以郵件的形式發(fā)送出去等,這些兒內(nèi)容我已在博文:http://blog.sina.com.cn/s/blog_68f262210102wcww.html中進行了詳細的講解,在此我們就再累述,感興趣的同學(xué)可以去參考一下。

7.4 本章小結(jié)

??? 在本章中我們介紹了自動化測試用例執(zhí)行的策略,什么是持續(xù)化集成,還有將我們的自動化測試工程接入到Jenkins當(dāng)中。最后我們可以靈活配置Jenkins,來達到我們特殊的需求。到目前為止,我們的移動自動化測試Appium+Python教程就完成了,通過這七章的學(xué)習(xí),完全可以將自己的移動自動化持續(xù)化集成跑起來。當(dāng)然后續(xù)還能做好多工作,可以結(jié)合Robot Framework來做自動化測試(參考:http://www.cnblogs.com/fnng/p/3871712.html)。當(dāng)然還可以做多線程方面的,同時在多臺設(shè)備上運行測試用例,有待你去研究和學(xué)習(xí)。


轉(zhuǎn)載于:https://www.cnblogs.com/eagleking0318/p/6520739.html

總結(jié)

以上是生活随笔為你收集整理的第七章 移动自动化持续化集成(下)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 可以直接看的无码av | 少妇愉情理伦片bd | 在线视频在线观看 | 少妇高潮毛片色欲ava片 | 精品66| 波多野结衣乳巨码无在线观看 | 天堂av资源网 | 国产视频成人 | 91视频青青草| 久久精品视频6 | 午夜亚洲aⅴ无码高潮片苍井空 | 精品国产www | 欧美videos另类精品 | 免费荫蒂添的好舒服视频 | 国产精品毛片一区二区在线看舒淇 | 日本一区二区人妻 | 国内外成人在线视频 | 精品少妇3p | 中文字幕十一区 | av天天色| 探花国产在线 | 91精品婷婷国产综合久久竹菊 | 青草青青视频 | 久青草影院 | 能看毛片的网站 | 日韩成人高清视频在线观看 | 最近免费中文字幕 | 性欧美精品中出 | 国产a一级 | 欧美性猛交富婆 | 日b视频免费看 | 中文字幕影院 | www国产在线观看 | 欧美日韩在线第一页 | 激情综合五月网 | 涩av | 久中文字幕| 综合图区亚洲 | 伊人色网 | 成人自拍视频在线观看 | 超碰97人人草| 中文字幕在线永久 | 国产免费a视频 | 无码av天堂一区二区三区 | 久久网一区 | 国产亚洲欧美日韩高清 | 另类捆绑调教少妇 | 男人天堂成人网 | 欧美r级在线 | 中字幕视频在线永久在线观看免费 | 欧美人妻精品一区二区 | 日韩成人精品视频 | 91丝袜一区二区三区 | 亚洲欧洲在线播放 | 欧美一级免费大片 | 亚洲男人的天堂在线观看 | 国产精品一区在线观看你懂的 | 午夜毛片在线观看 | 天堂在线中文在线 | www在线播放 | 99免费观看 | 中文字幕一区二区人妻 | 国产天堂精品 | 午夜av一区二区三区 | 林天顾悦瑶笔趣阁 | 国产精品国产三级国产普通话蜜臀 | 成年人网站免费视频 | 日韩一区二区在线观看视频 | 中文av在线播放 | 国产无遮挡免费 | www插插插无码免费视频网站 | 国内自拍欧美 | 91中文字日产乱幕4区 | 床戏高潮呻吟声片段 | 最新欧美大片 | 中文字幕人妻一区 | 一区二区三区毛片 | 久久久av免费 | 夜夜操狠狠操 | 天堂网2020 | 亚洲一二区在线 | 成人av综合网 | 青春草在线视频观看 | 国产在线一区二区视频 | 亚洲一区二区高清 | www.插插 | 中文字幕精品一区二区三区视频 | 高跟肉丝丝袜呻吟啪啪网站av | 91理论片 | 日韩一区av在线 | 亚洲乱色 | 成人午夜在线播放 | 国产又粗又长又大 | 草久视频在线观看 | 欧美黄色一区二区三区 | 免费一级片在线观看 | 日本h漫在线观看 | 午夜国产在线视频 | 91亚洲欧美 |