移動測試會第四期總結1

不知不覺已經到了移動測試會第四期了,很多朋友從杭州和南京趕過來參加我的會,我真的感到非常榮幸。不過也有一點讓我遺憾的是,我認爲上海這裏能來的朋友應該更加多才對。有點小小的失望。希望以後上海的同仁們能夠更加的活躍。
  感謝南京的朋友,喜力能夠來主動分享android,ios,web的持續繼承測試,和他溝通之後我會將ppt放出。
  基本上全程都是我在講,講的時候沒有感覺,結束之後就覺得好餓啊。。好累啊。。hold不住了。從北京回來到現在每天木有睡滿6個小時過,實在有點累。
  今天第一個講的是android的robotium工具,從robotium的官網上面下載了兩個工程,notepad和notepadtest。其是一個國外的小組在09年的時候就開始針對android的instrumentation做的一次二次開發。我們能夠看到在測試的工程中導入了robotium的這個jar包。
  移動測試會第四期總結1
這裏使用的版本是3.6.緊接着我介紹了這樣一個使用robotium框架的測試例子的代碼:
移動測試會第四期總結1
測試類繼承了android的測試類ActivityInstrumentationTestCase2,那麼這個類我們是可以在android的sdk文檔中找到。robotium的源碼中主類就是叫做Solo,那麼這裏創建了一個Solo的對象solo。構造函數中進行了被測對象activity的類名。接下來就是分別在測試啓動前getInstrumentation和getActivity了,在每次測試結束後進行啓動activity的結束。保證每次測試用例執行環境的一致。
接下來我們來看測試代碼:
移動測試會第四期總結1
其實robotium就是將android的測試框架進行了二次封裝,讓更多的測試人員能夠簡單,傻瓜式的進行coding。就如同上面的代碼,這裏哪怕是一個沒有接觸過junit,android,只要會一點點java的同學都能夠看懂。其就是一個黑盒功能測試的用例的代碼化,先點擊了列表中的第二行,然後設置了屏幕變成橫屏,然後點擊菜單中的edit title,然後在第一行輸入test,然後返回。最後去檢查兩個結果是否一致,否則返回錯誤信息。從整個過程來看,你想點擊,或者滑動,返回等操作的話,並不需要從每個動作的實現代碼寫起,而是直接行爲驅動測試代碼的編寫就可以了。非常的容易方便。

  不過同時,我也結束了robotium的講解。因爲我不建議大家使用robotium去進行寫測試。其一,它是一個第三方的封裝好的jar包,他本身很多api還有着一些bug。使用上面也會帶來很多的不便。其二,如果直接使用,也不利用測試人員更加好的瞭解android的測試框架以及實現機制。
  我個人建議如果要用,你可以選擇自己進行簡單的行爲封裝,然後調用自己的方法做。或者你也可以選擇對於robotium的源碼進行二次修改,添加或者重寫一些方法達到符合你產品的業務。這樣都是比較有利於長期進行測試的。
  同時,大家也可以選擇jenkins和hudson對於這些case做持續性的繼承,網上這類CI的搭建過程非常詳細,我這裏就不多說了。

  ok,這裏是今天沙龍的第一個topic,我就先寫到現在。接下來還有android如何用白盒的方法寫黑盒的測試用例,以及android CS架構的測試如何進行測試,以及android性能監控apk實現等也都是我說的topic我會在接下來的blog中進行續寫。今天的沙龍內容很多。大家繼續期待我接下來的blog把~~~:)

  謝謝大家。

轉載地址:http://blog.sina.com.cn/s/blog_7022adbf01015sxp.html
發佈了50 篇原創文章 · 獲贊 5 · 訪問量 11萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章