免费爱碰视频在线观看,九九精品国产屋,欧美亚洲尤物久久精品,1024在线观看视频亚洲

      回顧18年我的Java自動化測試框架

      回顧18年我的Java自動化測試框架

      目錄

      1、前言

      2、框架結(jié)構(gòu)

      2.1、app

      2.2、config

      2.3、data

      2.4、driver

      2.5、libs

      2.6、pythonProject

      2.7、result

      2.8、src

      2.9、sshPrivateKey

      2.10、startService

      2.11、target

      2.12、testng

      2.13、pom.xml

      1、前言

      18年的時候,根據(jù)項目組需要,編寫了一套 Java 版的自動化測試框架,可進行包括 APP(Android、iOS)、H5、Web、接口的自動化測試任務(wù)。測試報告可通過 HTML 報告或 Excel 報告的方式進行查看。此框架在項目組期間已落地使用并助力測試回歸時發(fā)現(xiàn)了一些問題(BUG)。

      框架開發(fā)完成后,只維護了一段時間,之后(離開項目組)就一直到現(xiàn)在沒有再維護了,所以一些封裝的方法與框架設(shè)計思想等有些“過時”了。接下來回顧一下此框架,也算是一個框架總結(jié),為后續(xù)的升級改造做準(zhǔn)備。

      2、框架結(jié)構(gòu)

      測試框架(AllRound_Test)整體結(jié)構(gòu):

      2.1、app

      app 目錄存放手機應(yīng)用程序,分為 Android 和 iOS。當(dāng)執(zhí)行自動化腳本時,如果設(shè)置采用先安裝手機應(yīng)用程序的方式,則會根據(jù)路徑安裝指定的 APP 程序。

      2.2、config

      config 目錄存放配置文件。

      app.properties 存放 Android / iOS 包名。

      browserdriver.properties 存放瀏覽器驅(qū)動的路徑。

      data.properties 存放測試數(shù)據(jù),分為:Android、iOS、H5、接口。

      linuxdriver.properties 存放連接 Linux 的配置信息。

      mongodriver.properties 存放連接 MongoDB 的配置信息。

      sqldriver.properties 存放 MySQL 的配置信息。

      sshPrivateKey.properties 存放連接 SSH 的密鑰路徑。

      url.properties 存放訪問的 URL 地址,分為:H5、Web。

      2.3、data

      data 目錄存放格式為 .xls 測試數(shù)據(jù),分為:Android、iOS、H5、接口。

      表格數(shù)據(jù)內(nèi)容。

      2.4、driver

      driver 目錄存放瀏覽器驅(qū)動程序,按操作系統(tǒng)分為:Windows、Mac。

      2.5、libs

      libs 目錄,根據(jù)測試項目要求,使用 Jython 語言(即在 Java 環(huán)境下使用 Python 語言)。

      2.6、pythonProject

      pythonProject 目錄存放 Python 腳本文件。

      如圖,一個單文件腳本(adder.py)、一個示例項目(TestDemo)。

      例如 TestDemo.py 腳本(就是 Python 腳本語法,不需要任何修改)。

      from selenium import webdriverimport unittest, time, osimport HTMLTestRunnerdef data_dirs():BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))DATA_DIRS = (os.path.join(BASE_DIR, ‘HTMLTestRunner生成測試報告’),)d = ‘/’.join(DATA_DIRS)print(d)return dclass Baidu(unittest.TestCase):def setUp(self):self.driver = webdriver.Chrome()self.driver.implicitly_wait(10)self.base_url = “http://www.baidu.com/”self.verificationErrors = []#百度搜索用例def test_baidu_search(self):u”’百度搜索用例”’driver = self.driverdriver.get(self.base_url)driver.find_element_by_id(“kw”).send_keys(“HTNMLTestRunner”)driver.find_element_by_id(“su”).click()def tearDown(self):self.driver.quit()self.assertEqual([], self.verificationErrors)if __name__ == “TestDemo”:#測試套件testunit=unittest.TestSuite()#添加測試用例到測試套件中testunit.addTest(Baidu(“test_baidu_search”))#獲取當(dāng)前時間now = time.strftime(“%Y-%m-%d %H_%M_%S”)#定義個報告存放路徑filename = data_dirs() + ‘/’+now+’ result.html’fp = open(filename, ‘wb’)#定義測試報告runner =HTMLTestRunner.HTMLTestRunner(stream=fp, title=u’百度搜索測試報告’, description=u’用例執(zhí)行情況:’)#運行測試用例runner.run(testunit)#關(guān)閉報告文件fp.close()

      2.7、result

      result 目錄存放測試日志與測試報告。

      測試日志。

      測試報告-測試步驟。

      測試報告-總覽。

      報錯自動截圖,并存儲在指定目錄里。

      2.8、src

      src 目錄存放基類、頁面元素、方法封裝、報告插件、測試用例、公共方法等。

      (1)base 目錄存放基類,根據(jù)不同的場景分類,可執(zhí)行 APP(Android、iOS)、Web、接口、Python 腳本。

      例如:BaseParpareApp_android.java (執(zhí)行手機端 Android,部分代碼

      (2)pages 目錄存放頁面元素類。

      例如:DemoPage_android.java(部分代碼)

      (3)pageshelper 目錄存放用于不同頁面的方法封裝。

      例如:WeiboPageHelper_android.java(封裝登錄,部分代碼)

      (4)plugins 目錄存放測試報告插件,支持生成 Excel 或 HTML 共三種方式的測試報告。

      (5)testcases 目錄存放測試用例。

      例如 AppTest_Weibo_android.java(授信,部分代碼)

      (6)utils 目錄存放公共方法。各種點擊事件、讀寫 Excel 表格、初始化數(shù)據(jù)、調(diào)用命令行、接口方法封裝、MySQL 操作(增刪改查)、鍵盤操作、SSH 命令操作、MD5 加密、MongoDB 操作(增刪改查)、驅(qū)動本地/遠程瀏覽器、封裝 Selenium 方法和常用方法、啟動與關(guān)閉 appium 服務(wù)等。

      例如:SelectBrowser.java(打開本地瀏覽器,部分代碼)

      2.9、sshPrivateKey

      sshPrivateKey 目錄存放用于連接 Linux 的 SSH 私鑰。

      2.10、startService

      startService 目錄存放可在命令行執(zhí)行啟動 Appium 服務(wù)的命令。

      啟動 Appium 服務(wù):

      appium –address 127.0.0.1 –port 4723 –no-reset –session-override

      2.11、target

      target 目錄存放通過 Maven 編譯該項目后所產(chǎn)生的 .class 文件等。

      2.12、testng

      testng 目錄存放單元測試框架 TestNG 所要執(zhí)行腳本的 .xml 文件。

      例如:testng_weibo_honor7.xml(配置參數(shù),部分內(nèi)容)

      將測試用例合并為測試集。

      三種測試報告模式,選擇哪種,就把監(jiān)聽打開即可。

      2.13、pom.xml

      pom.xml 文件,描述了該項目的 Maven 坐標(biāo),依賴關(guān)系,開發(fā)者需要遵循的規(guī)則,組織等,是項目級別的配置文件。

      使用 Jenkins 持續(xù)集成的方式,進行手動或自動或定時觸發(fā)此文件,來進行測試腳本的執(zhí)行。

      例如:pom_android_weibo.xml 文件(部分內(nèi)容)

      主要依賴的包 testng、appium、jxl、log4j、selenium、mysql-connector-java、okhttp、allure-testng-adaptor、mongo-java-driver 等。

      指定執(zhí)行的 TestNG 的 .xml 文件。

      整體流程:

      Jenkins(手動/自動/定時)觸發(fā) -> Maven 的 pom.xml 文件 -> TestNG 的 .xml 文件 -> 測試集(啟動服務(wù)、測試基類、測試用例、操作步驟、公共方法)-> 測試日志、測試報告、錯誤截圖

      公眾號:AllTests軟件測試

      鄭重聲明:本文內(nèi)容及圖片均整理自互聯(lián)網(wǎng),不代表本站立場,版權(quán)歸原作者所有,如有侵權(quán)請聯(lián)系管理員(admin#wlmqw.com)刪除。
      用戶投稿
      上一篇 2022年6月19日 18:19
      下一篇 2022年6月19日 18:20

      相關(guān)推薦

      • 分享4條發(fā)微商朋友圈的方法(微商朋友圈應(yīng)該怎么發(fā))

        對于微商朋友來說,朋友圈的重要性不言而喻了。 那么微商的朋友圈到底該怎么發(fā)呢? 為什么同樣是經(jīng)營一個朋友圈,有的微商看起來逼格滿滿,實際效果也不錯;而有的卻動都不動就被屏蔽甚至拉黑…

        2022年11月27日
      • 30個無加盟費的項目(茶顏悅色奶茶店加盟費多少)

        茶顏悅色又爆了,8月18日,茶顏悅色南京門店正式開業(yè),開張不到半小時,門店就人滿為患,消費者的購買熱情十分高漲,而由于人流量過大造成擁堵,茶顏悅色也不得不暫停營業(yè)。 當(dāng)然,這里面排…

        2022年11月27日
      • 短視頻策劃內(nèi)容的3個要點(短視頻策劃內(nèi)容怎么做)

        短視頻在制作時,內(nèi)容框架非常重要。如果直奔主題,然后結(jié)束,聚卓告訴你,這樣的短視頻已經(jīng)過時了。現(xiàn)在的短視頻需要框架的,但不是任何框架,它需要一種易于理解和消化的框架。而且,現(xiàn)在大多…

        2022年11月27日
      • 凈利潤率越高越好嗎(凈利潤率多少合適)

        一、持續(xù)增收不增利,平均凈利潤率首次跌入個位數(shù) 2021年,增收不增利依舊是行業(yè)主流。具體來看,大部分企業(yè)營業(yè)收入呈增長態(tài)勢,E50企業(yè)平均同比增速達到17.3%,但是利潤增速則明…

        2022年11月26日
      • 《寶可夢朱紫》夢特性怎么獲得?隱藏特性獲取方法推薦

        寶可夢朱紫里有很多寶可夢都是擁有夢特性會變強的寶可夢,很多玩家不知道夢特性怎么獲得,下面就給大家?guī)韺毧蓧糁熳想[藏特性獲取方法推薦,感興趣的小伙伴一起來看看吧,希望能幫助到大家。 …

        2022年11月25日
      • 《寶可夢朱紫》奇魯莉安怎么進化?奇魯莉安進化方法分享

        寶可夢朱紫中的奇魯莉安要怎么進化呢?很多玩家都不知道,下面就給大家?guī)韺毧蓧糁熳掀骠斃虬策M化方法分享,感興趣的小伙伴一起來看看吧,希望能幫助到大家。 奇魯莉安進化方法分享 奇魯莉安…

        2022年11月25日
      • 規(guī)范透明促PPP高質(zhì)量發(fā)展——16萬億元大市場迎來新規(guī)

        近日,財政部印發(fā)《關(guān)于進一步推動政府和社會資本合作(PPP)規(guī)范發(fā)展、陽光運行的通知》,從做好項目前期論證、推動項目規(guī)范運作、嚴(yán)防隱性債務(wù)風(fēng)險、保障項目陽光運行四個方面進一步規(guī)范P…

        2022年11月25日
      • 推薦3種白手起家的賺錢項目(白手起家賺錢項目有哪些)

        如今社會壓力非常的大,家有老少要養(yǎng)活,這些都加速了窮人想要創(chuàng)業(yè)的欲望,但是創(chuàng)業(yè)路總是那么的艱難,資金就是創(chuàng)業(yè)的重頭戲,所以選擇一個低成本又賺錢的項目是大多數(shù)人最期望的了,那么有哪些…

        2022年11月25日
      • 直播帶貨詳細腳本(直播文案策劃怎么寫)

        短視頻運營策劃方案怎么寫?涉及哪幾個方面? 我在網(wǎng)上看到好多千篇一律的文章,關(guān)于【短視頻運營策劃方案】這一塊,基本都是在講賬號的內(nèi)容本身。 你內(nèi)容做得再好,卻不掌握算法的規(guī)律,能有…

        2022年11月25日
      • 成都健康碼打不開顯示接口請求未知異常怎么辦(成都健康碼打不開顯示接口請求未知異常)

        成都這幾天的疫情也是備受關(guān)注,疫情期間各地出行都是需要查看健康碼的,不過今天卻有成都的小伙伴反饋健康碼無法打開的情況。成都健康碼打不開顯示接口請求未知異常怎么辦?由于健康碼無法打開…

        2022年11月24日

      聯(lián)系我們

      聯(lián)系郵箱:admin#wlmqw.com
      工作時間:周一至周五,10:30-18:30,節(jié)假日休息