、Default user E-mail suffix、System Admin E-mail Address、Jenkins URL、勾選Use SMTP Authentication,填寫User Name、Password、Use SSL、SMTP port、Chareset(UTF-8) 、Default Content Type(默認)、Default Recipients(默認收件人),配置完成后可進行測試郵件。
6、 Jenkins URL
配置該URL,用于別人訪問。
插件管理
1、 Hudson Subversion Plug-in,jenkins的svn插件。
2、 Android Emulator Plugin,android模擬器插件。
3、 JUnit Attachments Plugin,junit測試報告附件插件。
4、 Email-ext plugin,郵件擴展插件。此處說明下,默認Jenkins只會發送構建失敗的郵件,我們需安裝此插件才能自定義不同場景。
5、 Deploy to 買粉絲ntainer Plugin遠程發布插件。
自動化測試
打包源工程
Android程序
本小節講訴如何打包一個Android工程,當前使用的是ant進行編譯源碼。
1、 首先構建一個自由風格的Job。
2、 添加源碼路徑,選擇所使用的版本控制器,輸入源碼路徑。
3、 構建觸發器可根據需要選擇是否定時構建。
4、 構建環境,此處Jenkins安裝了Android Emulator Plugin插件,可以啟動已有模擬器或添加新的模擬器,本文案例中使用真機調試。
5、 構建,卸載手機中原程序 adb –s uninstall 買粉絲.XXXXXX
6、 生成bulid.xml文件,-p后面跟工程所在的本地jenkins下路徑
android update project -n *** c:\被測工程Job路徑\workspace
7、 Ant進行編譯程序,并安裝到當前手機中
ant debug install -f c:\被測工程Job路徑\workspace\build.xml
8、 構建后操作,本案例中構建完成后自動啟動構建下一個測試Job
Bulid other projects,選擇測試工程的Job.
打包測試工程
Android程序
本小節講訴如何構建一個Android測試工程,包括郵件發送和測試報告展示。
1、 構建步驟1-7和Android程序章節一樣,從略。
2、 本文案例中測試程序是通過命令行啟動運行的,所以在此處增加一個批處理運行。P.S. adb shell am instrument -w -e class 買粉絲.megafon.test.MegafonTest#testDeleteContact 買粉絲.megafon.test/android.test.InstrumentationTestRunner ,此處是通過批處理來單獨運行一個個的測試用例。避免了Junit3的無序執行的問題。
3、 刪除Workspace中原來存在的測試報告文件,一般不刪除也會覆蓋。
如何讓測試程序生成xml格式的測試報告,其他文章會重點介紹。
4、 從手機中拷貝測試報告,最終測試是在手機上運行,所以報告也生成在手機中,使用adb pull命令把測試報告全部拷貝到workspace下制定目錄。
5、 構建后操作,發布測試報告,如果報告中包含附件,此處使用到JUnit Attachments Plugin插件。
6、 郵件通知,此處使用到Email-ext plugin插件,前面的默認,直接使用我們在系統管理里面設置的默認值。
7、 點擊右下角高級按鈕,可選擇不同場景下發送郵件。
8、 測試結果展示,在本次構建的控制臺可以顯示當前所有的構建日志。
9、測試報告點擊Test Result可以顯示所有測試記錄。
z轉載,僅供參考,祝你愉快,滿意請采納。
目錄
一、前言
二、自動化目的
三、自動化分類
四、自動化實現
一、前言
在一些測試交流群經常會看到有小伙伴在問,"怎么做自動化測試?學習自動化測試有什么資料嗎?自動化測試是不是很牛逼?" ,甚至有些言論是"不會自動化的測試人員,真的要被淘汰了嗎?"
不得不說一堆流量號主抓住大眾心理,點進去的必然是賣課廣告,或者是關注買粉絲買粉絲領取測試資料大禮包。
實話實說,我之前也有同樣的疑問,甚至帶著擔憂。每次又不甘心得領著測試資料大禮包......
當然,隨著自己的認知不斷擴大,自己的一套測試體系建設不斷完善,于是這些擔憂逐漸的消失。每項技術引用都要看適用場景,是否適合自己的團隊,因地制宜才能發揮其最大的價值。
因此,我想通過這篇文章來分享下我對于自動化測試的理解。
二、自動化目的
自動化工作可以節省很多人工操作成本,減少人工重復性操作,提高整個團隊的研發效率。但是如果搭建自動化體系需要耗費很長時間,投入很多人力資源,但是用戶只要2-3分鐘的手動工作就能解決,而且這個操作并不頻繁,又或者需要自動化操作的平臺變更迭代非常快并且沒有規律,自動化工具在后面類似累活的跟著。那么自動化還是有必要嗎?
我之前在的團隊,造測試數據特別困難,嚴重影響了整個研發效率,但是當時也沒有一個好的解決辦法,后來基礎研發組做了一個造數平臺,這個平臺需要自己去配置各種字段,并且梳理出各個表字段的關聯,從頭到尾一個一個去構建場景,一不小心就配置錯誤,看著提示你也找不到原因的那種。這給造數過程中又添了一個攔路虎,給本不充裕的測試時間,又耗時一把。
如果能在做執行任務前評估任務的投入和收益,那么是不是就能更加合理的開展這項任務。那么自動化測試的投入和收益是怎樣的呢?
投入:通過測試人員借助腳本或者工具實現自動化,維護自動化平臺。
收益:提高測試效率,提升測試人員的成長。
自動化測試真的提高測試效率嗎?真的可以提升測試人員的成長嗎?針對后者,我認為是有的。接下來我們就來聊聊自動化測試是否提高測試效率。
三、自動化分類
自動化一般分為接口自動化和UI自動化,其中UI自動化又分為Web UI自動化和App UI自動化,按照我的理解還應加上部署自動化。
接下來我將針對這四種自動化的場景做一個介紹。因為我對于UI自動化不是很熟悉,我認為投入產出比不是很高,主要還是因為我沒咋接觸過,所以后面僅做簡單介紹,重點講解接口自動化和部署自動化。
四、自動化實現
4.1、接口自動化
接口
接口測試主要用于檢測外部系統與系統之間以及內部各個子系統之間的交互點。測試的重點是要檢查數據的交換,傳遞過程,以及系統間的相互邏輯依賴關系等。
流程
填寫接口,入參,對出參進行斷言,每天定時構建,輸出測試報告。
入參覆蓋范圍:必選,可選,有/無/null,類型,數值大小/數值范圍,特殊字符;
出參:json,data;
接口關聯:接口之間的依賴,數據傳遞;
斷言:對響應做核驗,可以對狀態碼或者msg做校驗。
優點
接口測試可以更快的發現服務端問題;
接口測試相對容易實現自動化持續集成;
接口測試相對于比單元測試比較貼近業務場景;
技術選型
1、MeterSphere
MeterSphere 是一站式測試平臺,涵蓋測試跟蹤、接口測試、性能測試、 團隊協作等功能,全面兼容 JMeter、Postman、Swagger 等開源、主流標準。
MeterSphere是一個功能交全的平臺,并且是開源的,對于免費版就足夠小團隊使用了,使用門檻相對來說較低,對于技術能力要求不高,所以是一個不錯的選擇。MeterShpre使用的技術棧是SpringBoot+vue,以及一些中間件,也可以在此基礎上進行二次開發。
2、Python
通過Python來做接口自動化的話,常用組件有:執行庫Requests,斷言庫unittest,測試報告HTMLTestRunner,通過持續集成Jenkins做定時構建。
框架思想:封裝,數據驅動。
使用Python的話則需要掌握一定的代碼能力,當然這個對個人技能的提升是很有幫助的,但是如果在時間比較緊迫的并且沒有足夠的技術功底情況下,還是比較推薦MeterSphere的。
4.2、部署自動化
部署
部署就是
2024-07-24 10:58
2024-07-24 10:57
2024-07-24 09:59
2024-07-24 09:30
2024-07-24 09:01
2024-07-24 08:58