接口級自動化測試與質量意識_第1頁
接口級自動化測試與質量意識_第2頁
接口級自動化測試與質量意識_第3頁
接口級自動化測試與質量意識_第4頁
接口級自動化測試與質量意識_第5頁
已閱讀5頁,還剩10頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、PPT模板下載: 接口級自動化測試與質量意識 陳 鵬挑戰未來目 錄C#接口級測試Android 界面測試質量意識自動化測試分層自動化測試分層u按照測試層次,可分為單元測試、接口及組件級測試、UI系統級測試u問題:我們目前在項目組中做了哪一層的自動化測試?效果如何?單元測試接口及組件測試UIC#接口級自動化測試接口級自動化測試uNUnit : 作為作為xunit體系中的一員,在體系中的一員,在C#項目的單元測試工具中,歷史最悠久。上手簡單。典型代碼邏輯如下項目的單元測試工具中,歷史最悠久。上手簡單。典型代碼邏輯如下:using NUnit.Framework;using HIPS.HSPS.Da

2、taContract;using MySql.Data.MySqlClient;using System.Windows.Forms;namespace HIPS.HSPS.DataService.Tester.PrintProxy TestFixture public class TestPrintProxy Test public void GetReportByBarCodeTest() var request = new DataContract.Request(GetReportByBarCode, 123811); ResponseSystem.Collections.Generi

3、c.IEnumerable reports = WcfClientServiceManager.Instance.SdpReportService.GetReportByBarCode(request); System.Collections.Generic.IEnumerable enumerables = reports.RspBody; Assert.AreEqual(enumerables.Count(), 0); Test public void StartPrintTest() C#接口級自動化測試接口級自動化測試u執行方式:執行方式:一鍵式、命令行一鍵式、命令行持續集成流程與全院

4、版本自動安裝持續集成流程與全院版本自動安裝獲取最新代碼代碼靜態檢查編譯打包自動部署單元測試自動化測試發布結果當前移動端測試工具簡介當前移動端測試工具簡介uMonkeyRunner :android SDK 自帶的測試工具,google開發,更新少,只支持原生android應用,應用很少。 uMonkey : android 穩定性測試工具,通過發送偽隨機的命令對于應用進行測試。應用面偏窄。uUiAutomator : 僅支持原生的android應用測試,只能做黑盒,接口偏少,用于場景測試顯得能力不足。uRobotium : 在android 2 時代便隨著android一起更新,可用于黑盒以及

5、白盒測試,目前應用最廣。uAppium : 既可測試android也可以測試IOS,selenium 創始人開發,目前稍顯能力不足,未來的王者。Robotium框架及實例框架及實例u 開源庫Robotium為了彌補ActivityinstrumentationTestCase2(Android單元測試框架Instrumentation的一個類)對集成測試支持的不足而編寫的Robotium框架及實例框架及實例public class MeituanWelcomeTest extends ActivityInstrumentationTestCase2 private Solo solo; pri

6、vate static final String LAUNCHER_ACTIVITY_FULL_CLASSNAME = com.sankuai.meituan.activity.Welcome; private static Class launcherActivityClass; static try launcherActivityClass = Class.forName(LAUNCHER_ACTIVITY_FULL_CLASSNAME); catch (ClassNotFoundException e) throw new RuntimeException(e); public voi

7、d setUp() throws Exception super.setUp();solo = new Solo(getInstrumentation();getActivity(); Robotium框架及實例框架及實例public void testWode() / Wait for activity: com.sankuai.meituan.activity.Welcomesolo.waitForActivity(Welcome, 3000);/ Set default small timeout to 166937 millisecondsTimeout.setSmallTimeout

8、(166937);/ Click on 取消solo.clickOnView(solo.getView(android.R.id.button2);/ Click on 我的solo.clickOnView(solo.getView(mine);TextView view = null;view = (TextView)solo.getView(login);System.out.println(now is : + view.getText();assertEquals(view.getText(), 登錄登錄);/ Press menu back keysolo.goBack();solo

9、.waitForDialogToOpen(5000);solo.goBack();質量意識質量意識u 因因 緣緣 果果 原理原理u系統、開發、測試系統、開發、測試 在因在因-緣緣-果系果系統中的定位統中的定位u我們如此關注我們如此關注“因因”,是想要一,是想要一個好的成果個好的成果質量意識質量意識u 設計、編碼階段設計、編碼階段1、 模塊之間通信,不回響應、超時、錯誤響應模塊之間通信,不回響應、超時、錯誤響應 怎么處理,不能出現業務主線程掛起。重要消息是否有失敗重怎么處理,不能出現業務主線程掛起。重要消息是否有失敗重試機制,反復失敗的情況下,是否有持久化機制;試機制,反復失敗的情況下,是否有持

10、久化機制;2、 采用多線程的模塊,是否有線程池上限的設置,是否需要做流控,是否存在系統資源被耗盡的風險;采用多線程的模塊,是否有線程池上限的設置,是否需要做流控,是否存在系統資源被耗盡的風險;3、 同步、異步機制的選擇是否合理,目標吞吐率是多大。異步機制下,是否有必要做回調接口。同步、異步機制的選擇是否合理,目標吞吐率是多大。異步機制下,是否有必要做回調接口。u 轉測試階段轉測試階段1、是否做了開發自驗證;是否充分、是否做了開發自驗證;是否充分2、自驗證是否是基于轉測試的新版本進行,還是基于自己的補丁環境、自驗證是否是基于轉測試的新版本進行,還是基于自己的補丁環境3、自驗證結果是否有清晰的記錄

11、、自驗證結果是否有清晰的記錄u 測試階段測試階段1、開發人員是缺陷單解決的主要責任者。、開發人員是缺陷單解決的主要責任者。2、是否做到了持續跟蹤解決缺陷單,是否做到了主動重現問題,是否主動添加日志定位,是否在實在無法重現、是否做到了持續跟蹤解決缺陷單,是否做到了主動重現問題,是否主動添加日志定位,是否在實在無法重現的前提下才找測試協助重現,還是被動的等待測試重現的前提下才找測試協助重現,還是被動的等待測試重現3、 提供補丁,是否做到了充分驗證;提供補丁,是否做到了充分驗證;4、 針對疑難雜癥,是否主動的聯系上下游(第針對疑難雜癥,是否主動的聯系上下游(第3方供應者、測試、項目經理)做攻關討論,

12、并有效閉環。方供應者、測試、項目經理)做攻關討論,并有效閉環。5、 對缺陷單回歸不通過,需要有愧疚感對缺陷單回歸不通過,需要有愧疚感質量意識質量意識 錯誤認識錯誤認識u 質量是測試人員關注的事情質量是測試人員關注的事情u 我只管寫代碼就可以了,測試都是測試人員的事情我只管寫代碼就可以了,測試都是測試人員的事情u 測試不用掌握實現,你問這個干什么,你只管測試就行了測試不用掌握實現,你問這個干什么,你只管測試就行了u 既然轉測試版本質量這么差,開發人員做不好自測試,開發人員就不做了,讓測試人員在我們轉既然轉測試版本質量這么差,開發人員做不好自測試,開發人員就不做了,讓測試人員在我們轉測試前測試一遍

13、吧測試前測試一遍吧u 反面教材:反面教材:某公司的數據庫產品:XXXXXXX,PB級的非關系型數據庫,存儲著中國移動PB級數據。在2012 年 12月份,備份策略誤刪12TB 數據庫,導致永久丟失,中國移動二級投訴。該項目組全體績效差,項目經理撤職,測試經理離職。特點:開發人員不用做測試,只用寫代碼,開發人員缺乏整體意識,部分開發人員環境搭建都不熟練,寫的代碼類似于demo,異常考慮少。測試工作全是測試人員的事情,測試人員頻繁糾結于基本功能測試,測試水平低下。測試能力演進測試能力演進1 1、測試人員均是產品專家,、測試人員均是產品專家,對于產品內部的模塊劃分與實對于產品內部的模塊劃分與實現細節

14、熟練掌握,可以手工測現細節熟練掌握,可以手工測試,自動化測試較少;試,自動化測試較少;2 2、測試團隊、測試團隊70%70%以上的時間在以上的時間在功能測試,性能、穩定性、可功能測試,性能、穩定性、可靠性等開展較少;靠性等開展較少;3 3、沒有持續集成等工程能力;、沒有持續集成等工程能力;4 4、沒有取得代碼覆蓋度等數、沒有取得代碼覆蓋度等數據,沒法評估測試充分性;據,沒法評估測試充分性;測試高級階段測試高級階段測試初級階段測試初級階段測試中級階段測試中級階段1 1、建成了完善的灰盒、黑盒自、建成了完善的灰盒、黑盒自動化框架,并輔助開發,逐步動化框架,并輔助開發,逐步把功能測試移交到開發團隊內

15、把功能測試移交到開發團隊內部進行;部進行;2 2、進行充分的性能、可靠性、進行充分的性能、可靠性、穩定性、安全等測試,并可以穩定性、安全等測試,并可以給予評估;給予評估;3 3、具備持續集成等工程能力,、具備持續集成等工程能力,且可有效提高歸檔、測試效率;且可有效提高歸檔、測試效率;4 4、可以評估代碼覆蓋度,并能、可以評估代碼覆蓋度,并能分析未覆蓋代碼的風險;分析未覆蓋代碼的風險;5 5、可以對產品做商用風險評估。、可以對產品做商用風險評估。1 1、測試工作已完全融入團隊內每一、測試工作已完全融入團隊內每一個人的基礎工作中;個人的基礎工作中;2 2、測試設計師規劃測試范圍、風險、測試設計師規劃測試范圍、風險熱圖,并分別將這些測試工作分散到熱圖,并分別將這些測試工作分散到開發人員、內部試用者、早期

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論