敏捷開發自動化測試框架之用戶故事

自動化測試框架搭建及開發,我是按照敏捷開發的用戶故事模式,把每個階段都拆成一個大故事,再拆分成一個個小的故事,一一實現。

用戶故事是描述對用戶有價值的功能,好的用戶故事應該包括角色、功能和商業價值三個要素:

1.角色:誰要使用這個功能。

2.功能:需要完成什么樣的功能。

3.價值:為什么需要這個功能,這個功能帶來什么樣的價值。

使用這種模式的目的:用戶故事越細,越能更好的統計每個階段的目標,完成的時間,所需要的人力,越容易控制測試開發的周期,及階段性的工作成果,若測試開發期出各種問題可以及時彌補。

以公司移動端自動化項目來介紹,如何以敏捷開發之用戶故事模式來完成測試框架搭建及開發:

一.選擇合適的框架

1.羅列出對框架的要求

1)測試對像為移動端客戶端,平臺為Android與IOS;

2)App應用類型:原生+web,其中支付會調用第三方App;

3)你會用什么語言開發,例:JAVA;

注:這個框架要滿足跨平臺,跨進程,支付混合模式,支持JAVA編程語言;

2. 要滿足1)的條件都列出,選擇最適合的框架:

如上圖最滿足條件得只有Appium了;

二.配置環境

1.安裝Appium開發環境;

2.下載找到系統,軟件,硬件都兼容的版本,否則會在版本兼容上浪費很多時間;

3.下載一個實例,調試,運行。

三.框架結構整改

下載的實例都是比簡單流程操作,易用性較差,需要改進:

1.我使用的JAVA工廠模式 ;元素定位,操作,用例,場景都是按最小單元劃分;

1)定位元素封裝為一個公共的方法;用到調用及可;

2)元素操作為最小單元:例:點擊登錄按鈕為一個方法:

3)多個方法組為一個CASE,一個方法可以被多個CASE調用;

4)一個或者多個CASE可以組合為一個場景;可也可被多個場景調用;

5)像截圖,滑屏,...公共方法都封裝起來調用執行。

2.關鍵字驅動;

1)參數屬性存放在一方法里

2)操作元素的ID,Name,Xpath,...都放在一個指定文件,在寫方法操作時在指定文件讀取,修改即可,例:元素定位變 了,修改一處可以實現多處被修改,不用一處理去修改。

3.部份數據初始或者銷毀會用到數據庫;

4.代碼結構

四.用例是否可自動化

把可以需要自動化的用例加以標識,并標識需要自動化用例的優先級,按照優先級別開發自動化CASE。

五.自動化功能分塊,以公司產品為O2O模式

?1.可以先大至分為三大塊:用戶,商戶,流程(用戶與商戶交互);

?2.在將大類按模塊拆分成小類;

六.CASE顆粒度設計

越細越好,方便組合與拆分。

七.場景設計

1.每一個模塊,或者一個流程組合成一個場景;

2.再按大類組合一個用例集

用戶主頁:只覆蓋用戶主頁的CASE;

用戶側邊欄:用戶側邊欄CASE;

商戶功能:用戶所有CASE;

流程功能:訂單部份,用戶與商戶交互訂單流程CASE;

支付功能:所有與支付相關的CASE;

BVT腳本:覆蓋所有功能,是將以上功能組合實現;

按用戶故事劃分的好處是分開執行,也可以組合執行,各功能也可以分不同人去編寫,然后組合再一起,也利于分配和過程控制。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 173,581評論 25 708
  • Spring Cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發現,斷路器,智...
    卡卡羅2017閱讀 134,993評論 19 139
  • 心情好,高興開心的時候,喜歡紅色。 心情差,抑郁的時候,喜歡紫色。 淡漠的時候喜歡淡藍色。 平和的時候喜歡淡綠色。
    bf61d3966470閱讀 281評論 0 1
  • 接受自己 接受自己的外貌 接受自己的不漂亮 無論如何 它是上帝送給你獨特的禮物 顯示自己的獨一無二 正視自己 正視...
    一只不吃青草的羊閱讀 276評論 2 3
  • 當下這一刻,你是完滿的,好幸福,有同事在周圍,我在做著自己想做的事,好享受,好滋養,我愛你們。我能不能一直這樣愛自...
    佳肴寶寶閱讀 610評論 0 0