在今天的博文中,博主希望給大家分享一本博主同事黃勇的最新利作:《移動App測試的22條軍規》。黃勇是ThoughtWorks資深敏捷QA和咨詢師。對於我來說,和黃勇在一起的工作的這個項目,是我至今所一直懷念的那種少有的項目。黃勇在團隊中以資深QA的團隊協調能力和專業技能,不僅保障了項目的交付質量,同時也能很好的協調從客戶到開發中的各個環節。
移動互聯網的興起
在當今世界,移動互聯網已經興起了,它距離我們大家,已經不再那么遙遠了,已經開始慢慢的融入了我們的生活之中。特別在最近兩年,BAT這等巨頭在移動互聯網的擴張和斗爭層起不窮,微信和支付寶的市場之戰,滴滴、快滴、Uber的快速崛起,我們的生活也被些日星月異的移動App所改變。
特別在今年筆者的感觸比較深,筆者維護着國內Angular中文社區群。某一天,作為日常慣例上線QQ群,為大家解決一些技術問題。當我幫助某某同學解決完他的問題的時候,突然,他向我發起私聊窗口,問筆者要支付寶賬號,希望給筆者支付寶紅包來感謝筆者的幫助。不禁的深嘆:我們的消費觀念已經改變了,我們開始選擇了移動互聯網,開始接受了網上消費。到這里這件事還沒有完成,隨后筆者將此感觸消息發到了自己朋友圈。在滿是“贊”的同時,筆者也陸續收到總共32元人民幣的紅包,都是為了感謝筆者“雙狼說”的文章或者是平時的技術幫助。再次不禁的感慨萬千:移動互聯網已經來到了我們的身邊,並且也在改變着我們的生活!
《這是一個屬於移動App開發者的時代》
下面是摘自同事《移動App測試的22條軍規》中:來自Testin雲測 聯合創始人、CEO 王軍的書序《這是一個屬於移動App開發者的時代》:
一年前,當我陪同Google董事會主席施密特先生在中關村海龍市場考察時,面對蓬勃發展的移動互聯網和不確定的未來格局,施密特說到“移動App開發者將是未來的核心”。回想移動互聯網的發展不過只有幾年的歷史,但以移動App為核心的創新正在影響着我們的現在,並且改變人類的未來。
人們的吃、喝、購物、旅游、用車、醫療健康的方方面面,我們花的每一分錢,可能都會跟移動App有關。雖然現階段移動互聯網和傳統經濟僅僅結合更於緊密的是移動游戲、電商、O2O,但隨着技術的進步、創業者的創新,移動互聯網與傳統經濟的接觸將更為緊密,可穿戴、醫療、支付或者是所有的錢包。人類經濟發展到現在位置,GDP或者是實體經濟,是圍繞着過去的現金和信用卡而支撐的體系,如果現金、信用卡被移動App顛覆了,我們所有的一切未來只是一個ID,只是手機上一個App,那這個信托責任是多么的巨大。伴隨着傳統互聯網的發展,過去幾十年在傳統的IT建設上投資的錢,已經不是千萬美金、數億美金來算,是一個龐大的固定資產,而APP開發者三年前可能還是一個屌絲,就是無業的,或者是剛進校門的,可能幾年之后就成長為一個承擔人們數億、數十億資產管理的平台。作為軟件,App不存在bug是不可能的,開發者的責任就是要在App發布前竭盡所能進行全面的測試,發現App是否存在隱患,判斷支付的時候會不會崩潰,確保用戶體驗至少是可以接受的,還有沒有讓用戶使用不爽的地方,這是App開發者必須承擔的責任。
歷史上第一個”Bug”誕生至今已有70年,期間經歷了第三次工業革命、信息革命。現在,移動互聯網已經無所不在。軟件測試的重要性隨着信息技術的發展,越來越被人們重視。功能測試、性能測試、壓力測試、安全測試、用戶體驗測試,許多的專業詞匯涌現出來。
測試在雲端?移動App爆發所帶來的碎片化困擾着開發者,於是我們在2011年創立了專門向移動App開發者提供雲測試和質量管理的服務平台Testin雲測,把傳統的測試從本地搬到了雲端。開發者在App中集成專用的測試SDK,一旦用戶使用App時發生崩潰。SDK會把崩潰的堆棧信息,App版本等信息上報到雲端。堆棧信息能夠定位到出現崩潰的文件、類名、函數名、代碼行,開發者在雲端根據崩潰的堆棧信息能夠快速定位並修復問題。
移動App測試的重要性?移動互聯網的產品講究的快,產品開發也是快速迭代的模式。我們很難像傳統測試那樣花費半年或者幾個月的時間去測試整個系統。那雲端測試恰好就幫助我們在既保證產品快速發布的情況下,又能夠把控好產品的質量。開發者可以在完成基礎的測試工作后將產品發布市場,一方面通過市場完善產品的能力;一方面在用戶使用的過程中收集並修復產品的Bug,類如微信就經常進行灰度發布。
移動App測試的難度?雲端測試一直以來存在幾個難題:1、各類App或游戲的開發語言不統一,收集用戶的崩潰信息較難;1、上報的堆棧信息因混淆或者語言本身因數,內容辨識度較低,很難定位問題;3、信息量太大,沒有很好的去重。經過多年發展,崩潰分析用戶性能管理能夠跨平台支撐Cocos2d-x、Unity3d引擎,Java、C、C++、Objective-C、JavaScript、Lua、C#等不同編程語言。崩潰的堆棧信息更是通過符號化能力,清晰地將不可讀的內容符號為出現崩潰的文件、類名、函數名、代碼行。同一崩潰的去重是提高開發者工作效率的重要因素,通過對不同崩潰堆棧直接函數的調用關系判斷及每日過億條崩潰數據的分析。崩潰分析SDK不斷總結、優化自身的去重算法。舉個例子,一個崩潰可能在1萬個用戶終端出現過。雲端可以判斷出是同一塊代碼導致的,這種場景在傳統測試中很難去分析。
如今,移動App的開發者越來越多,開發工具、引擎的發展迭代也在加快,App開發極為快速,而成本卻在逐步降低。但移動App作為軟件,傳統的軟件工程測試方法與質量體系,在飛速增長的移動App開發模式和生態體系中很難有效地發揮作用,《移動App測試的22條軍規》的實戰建議實用、簡明、有效,將幫助開發者在激烈競爭的環境下能夠脫穎而出,能更好地創新並快速發展。
《移動App測試的22條軍規》
本書的在線購買或試讀地址為:http://item.m.jd.com/ware/view.action?wareId=11730286&from=timeline&isappinstalled=0