成人怡红院-成人怡红院视频在线观看-成人影视大全-成人影院203nnxyz-美女毛片在线看-美女免费黄

站長資訊網
最全最豐富的資訊網站

Android JUnit 入門指南

      自動化單元測試可以做許多的事,并幫你節省時間。它也可以被用作快速檢驗新建工程或進行冒煙測試。始終,單元測試是作為一種有效的、系統的檢驗應用程序各功能執行的方式。Android SDK支持JUnit的自動化單元測試。本教程假設你已熟悉Android和JUnit在Eclipse的使用。

 

      創建一個Android的JUnit項目

      如果你的Eclipse中已經有Android項目,就不用再創建了。如果你的Eclipse中沒有Android項目,你可以創建一個JUnit項目,在創建JUnit項目的同時也會為你創建Android項目。

      對現有的Android項目,在Eclipse中右鍵單擊,選擇“Android Tools”,然后“New Test Project…”,如下圖:

 

Android JUnit 入門指南

 

      如果是新建Android項目,在“New Android Project”對話框中,按“Next”按鈕,如下圖:

 

Android JUnit 入門指南

      無論按照上面哪種方式,你都會在這個時候創建Android項目的新測試項目。創建測試項目的對話框,如下圖所示,通常會自動填寫上一些標準的命名約定等細節。如果沒有,請自己填寫,并創造該項目。

 

Android JUnit 入門指南

      在Android中創建一個JUnit測試用例


      Android應用程序通常是由一些Activity類組成的。事實上,每一個ACtivity都可以是一個獨立實體,進行測試。Android SDK中包含了幾個類來測試ACtivity類。現在我們將使用一個。

      右鍵單擊你的測試項目。選擇“New”,然后“JUnit Test Case”:

 

Android JUnit 入門指南

 

      在新建JUnit測試用例對話框上填寫,使用超類是android.test.ActivityInstrumentTestCase2,其中T是我們要測試的Activity,如下圖:

 

Android JUnit 入門指南

      點擊“完成”按鈕,這個類就創建成功了。注意:由向導創建的默認構造函數是不正確的。我們需要修改它,讓它不帶任何參數,調用不同的super()的方法,代碼如下:

 

1 public ScreenValidation() {    2    super("com.mamlambo.testingproject.TestingProjectActivity",    3      TestingProjectActivity.class);   4 }
      setUp()方法中,應配置運行這個測試用例所需的所有東西。Activity實例隨時可以被getActivity()方法調用。例如:如果我們想在測試中顯示一個TextView在Activity上,我們可以實現setUp()方法,如下:
 
1 TextView helloText;    2 protected void setUp() throws Exception {    3   super.setUp();    4   helloText = (TextView) getActivity().    5      findViewById(R.id.hello_textview);    6 } 
 
      在Android中添加單元測試
      此時你可以創建各種測試。你可以獲取到Activity布局上所有控件,以及在應用程序的任何代碼。由于使用Activity測試用例,我們可能感興趣于用戶界面,布局,及功能。讓我們看看TextView控件顯示在屏幕上。

 
01 public void testHelloTextVisibility() {    02    View container = getActivity().findViewById(R.id.container_layout);    03    int boundaryWidth = container.getWidth();    04    int boundaryHeight = container.getHeight();    05     06    int[] location = new int[2];    07    container.getLocationOnScreen(location);    08     09    int[] helloTextLocation = new int[2];    10    helloText.getLocationOnScreen(helloTextLocation);    11     12    Rect textRect = new Rect();    13    helloText.getDrawingRect(textRect);    14     15    boolean widerThanBoundary = (textRect.width() > boundaryWidth);    16    boolean tallerThanBoundary = (textRect.height() > boundaryHeight);    17    boolean extendsOffRight = location[0] + boundaryWidth    18      > helloTextLocation[0] + textRect.width();    19    assertTrue("Text wider than boundary", widerThanBoundary);    20    assertTrue("Text taller than boundary", tallerThanBoundary);    21    assertTrue("Text goes off right side", extendsOffRight);    22     23    // ... and so on    24  } 

 

      所有的測試方法必須用“test”做前綴。上面,我們已經創建了一個測試名為“HelloTextVisibility”的方法。如果測試通過或失敗,assertFalse()都會被調用。(assertTrue()方法只有是true時調用。)

 

      運行JUnit測試用例

      運行測試和測試用例,點擊Eclipse的Debug,選擇Android JUnit測試。如果你喜歡,你還可以創建一個Android JUnit測試配置,自定義這些設置。
      如下圖,我們的小應用程序在橫屏模式下,“Hello Text Visibility”測試通過:

 

Android JUnit 入門指南

 

      但在豎屏模式下,未能通過測試:

 

 Android JUnit 入門指南

      很顯然,我們的布局設計在豎屏模式下顯示不正確。(注:這可能是設置的寬度像素超過了手機的,而沒有使用合適的單位,如DP或是match_parent。)

 

      Android應用程序的質量在于單元測試

 

      創建單元測試時,必須小心謹慎。如果測試用例不正確,測試的東西通過了,也沒有價值。這是非常糟糕的,因為它可能掩蓋了一些問題。所以測試用例與代碼本身一樣重要。測試測試用例的主要方式是通過做代碼審查,并確保它們確實在測試。

      當然,測試Android框架的功能對于你的app來說,沒有起到特別大的作用。比如,測試設置文本字段的值,然后讀取它,看它是否相同。測試常規的TextView,并不是特別有意義的(除非你的SDK在一個新的設備上使用)。然而,如果是測試你自己實現的TextView,那就有必要了。

      這并不是說任何代碼框架都是那樣的完美無缺,但測試的事情是值得花許多心思的去寫測試開始的。如果失敗了,比起的你的應用程序,你將有更大的問題。還有是對SDK之間的細微差別的測試,在上面的例子中,我們沒有這么做,是因為我們使用了正確的SDK。

因此,如果你是自動化單元測試的新手,我們建議你做一些這方面的課題研究。一個不錯的地方是JUnit.org。

 

      結論


      在本教程中,你已經學會如何快速添加一個新的測試項目,并在Eclipse的Android項目中使用JUnit對你的app執行自動化測試。單元測試可以為邏輯測試,功能測試和用戶界面測試等,不再是專門手動測試移動應用。然而,使用一個包含自動化單元測試的套件,有幾大好處:它可以節省時間,金錢和資源,以及提供一套可靠的,重復性的測試,并且可以運行在許多不同的設備配置中。

 

贊(0)
分享到: 更多 (0)
?
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
内射老妇女BBWXOGOD| 第一次处破女01免费观看| 麻豆文化传媒精品一区观看| 国产精品久久久久久久久鸭无码| FREE嫩白18SEX性HD处| 亚洲色偷偷综合亚洲AV色欲| 无码人妻精品一区二区三区免费看 | 他的舌头探入蜜源毛毛虫说说| 欧美成人精品高清视频| 久久久久精品无码AV| 果冻传媒AⅤ毛片无码| 国产大学生酒店在线播放| 成年午夜免费韩国做受| AV无码精品久久久久精品免费| 亚洲色欲色欲WWW在线播放| 一区二区三区国产好的精华液| 亚洲娇小与黑人巨大video| 午夜理论片YY44880影院| 少妇搡BBBB搡BBB搡| 日韩AV蜜桃在线观看| 青青草原精品99久久精品66| 男女嘿咻发声动态图| 老熟妇乱子伦牲交视频| 久久久噜噜噜久久久精品| 久久AV高清无码| 狠狠躁夜夜躁青青草原软件| 国精产品一区二区三区糖心269| 国产乱色精品成人免费视频 | 在线精品国精品国产尤物| 亚洲日韩精品无码专区网址| 亚洲高清乱码午夜电影网| 无码精品人妻 中文字幕| 我把护士日出水了视频| 为了撞上你1∨1SC| 亚洲色偷拍另类无码专区| AV无码欧洲亚洲电影网| 国产乱人伦偷精品视频免下载| 久久亚洲精品人成综合网| 久久婷婷五月综合色99啪| 久久婷婷国产剧情内射白浆| 欧美日韩无套内射另类| 啪啪啪1000免费观看| 人妻熟女一区二区AⅤ波多野结衣| 欧美午夜一区二区福利视频| 无码国产精品一区二区免费模式 | 欧式春画图片大全欣赏简单| 欧美日韩中文国产一区| 午夜男女爽爽影院_性夜影院 | 日本牲交大片免费观看| 日本一卡二卡三卡四卡2021| 亚洲AV成人网站在线播放| 亚洲VA久久久噜噜噜熟女8| 亚洲欧美国产免费综合视频| 亚洲熟妇成人精品一区| 成人毛片18女人毛片免费视频末| 娇妻玩4P被3个男子伺候电影| 久激情内射婷内射蜜桃| 久久综合给合久久狠狠狠97色6 | 亚洲国产精品无码久久| 被青梅竹马的学弟给锁定了林擎霄| 成 人 H动 漫在线播放日本| 国产妇女馒头高清泬20P多| 老司机久久99久久精品播放免费| 铜铜铜铜铜铜铜铜好痛好深色板| 性 偷窥 间谍 tube| 亚洲女久久久噜噜噜熟女| 成人夜色视频网站在线观看| 国产精品天干天干在线综合| 经典精品毛片免费观看| 日韩不卡手机视频在线观看| 一二三四在线看日本高清| 国产精品久久香蕉免费播放| 欧美交换配乱吟粗大视频| 色噜噜人体337P人体| 亚洲AV无码成H人动漫无遮挡| 夜夜爽妓女8888视频免费观看 | 国产CHINESEHDXXXX宾馆TUBE | 无码专区人妻系列日韩精品少妇| 亚洲人成色4444在线观看 | 久欠精品国国产99国产精2| 欧洲美女粗暴交视频| 亚洲欧美综合区丁香五月小说| 公交车伦流澡到高潮HNP| 精品久久久无码人妻中文字幕 | 日韩一区二区三区AV| 亚洲AV乱码久久精品蜜桃| 扒开腿狂躁女人爽出白浆 | 久久综合香蕉国产蜜臀AV| 小洁和公H文翁17| 纯爱无遮挡H肉动漫| 狠狠爱ADY亚洲色| 奶大灬舒服灬太大了一进一出| 亚洲AV无码一区二区少妇| 2022一本久道久久综合狂躁| 国产99久久九九精品无码| 久久久精品波多野结衣| 日韩人妻无码精品专区| 亚洲人成无码网WWW电影麻豆| 国产精品久久久天天影视| 日本毛多水多做受视频| 亚洲精品无码久久久久APP| 锕锕锕锕锕锕锕好疼视频真人| 国产人无码A在线西瓜影音| 蜜桃AV不卡无码三区| 无码福利日韩神码福利片| 宝宝握住坐下~它会自己动| 精品久久久无码人妻字幂| 午夜天堂精品久久久久| 国产波霸爆乳一区二区| 老湿机香蕉久久久久久| 亚洲无线一二三四区手机| 绯色av一区二区三区蜜臀| 久久婷婷人人澡人爽人人喊| 亚洲国产午夜无码精品小说 | 久久亚洲国产精品123区| 亚洲色丰满少妇高潮| 加比勒色综合久久| 亚洲AV无码久久精品香娇| A∨变态另类天堂无码专区| 国产无套码AⅤ在线观看| 欧美胖老太牲交XXⅩXXX| 亚洲国产AV玩弄放荡人妇| 国产区精品一区二区不卡中文| 天天爽夜夜爽人人爽一区二区| 正在播放老肥熟妇露脸| 国产乱XXXXX97国语对白| 去部队探亲晚上叫太大声| 717影院理论午夜伦八戒| 极品国产主播粉嫩在线| 亚洲AV无码成人专区| 韩漫无遮漫画全集观看| 色橹橹欧美在线观看视频高清| 成人久久免费网站| 丝袜AV在线丝袜AV天堂| FREE性欧美HD另类精品| 欧美成人一区二区三区在线视频| 99精产国品一二三产区| 久久国产劲爆∧V内射| 亚洲欧美日本A∨在线观看| 精品亚洲A∨无码一区二区三区 | 亚洲人成无码网站| 久久亚洲精品无码VA大香大香| 要灬要灬再深点受不了好舒服| 国产成人a在线看片色欲AV| 无码精品人妻一区二区三区AV| 国产毛片毛多水多的特级毛片| 性色AV一区二区三区夜夜嗨| 成人午夜福利视频后入| 少妇无码AV无码专区线Y| 国产精品XXX大片免费观看| 日本喷奶水中文字幕视频| 乖我们在办公室试试| 西西人体444WWW高清大胆| 精品国内自产拍在线观看视频| 私人小影院久久久影院| 国产精品久久国产三级国| 亚洲AV性色精品国产小电影| 久久精品人人做人人爽电影蜜月| 又爽又刺激免费男女视频| 精品人妻系列无码一区二区三区 | 国产精品午夜无码AV体验区| 亚洲妇女水蜜桃AV网网站| 国产精品无码素人福利不卡| 亚洲国产精品一区二区久久| 久久综合亚洲色HEZYO国产| FREE性欧美HD另类精品| 天堂在/线资源中文在线BT| 黑人巨大跨种族VIDEO| 曰批免费视频播放免费直播| 亲胸揉屁股膜下刺激视频免费网站| 丰满熟女高潮毛茸茸欧洲视频| 日本强好片久久久久久AAA| 国产果冻豆传媒麻婆精东影视| 亚洲精品无码国产| 欧美黑人巨大XXXXX| 国产白嫩护士被弄高潮| 亚洲情A成黄在线观看动漫尤物| 男人躁女人到高潮视频| 高清乱码一区二区三区| 亚洲另类激情综合偷自拍图片| 欧美大胆老熟妇乱子伦视频| 丰满熟妇人妻AV无码区| 亚洲乱码日产精品BD在线看| 欧美人妻兽交V1DE0S| 国产精品视频色尤物YW| 呦小BBW搡BBBB搡BBBB| 日本熟妇人妻XXXXX人电影| 国产亚洲视频在线观看播放| 羞羞在线版免费阅读入口| 老师抱着我在教室做| 二男一女一起日B| 亚洲欧美成人一区二区三区| 人妻 白嫩 蹂躏 惨叫| 国产线路3国产线路2| 亚洲AV无码一区二区三区大黄瓜 | 吃瓜网51CG7爆料| 亚洲区激情区无码区| 日韩精品无码免费专区网站| 精品一区二区三区在线观看视频| 锕锕锕锕锕锕锕好疼免费看网站|