小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

android自動(dòng)化測(cè)試

 盈盈一書(shū)屋 2011-05-09

Android 自動(dòng)化測(cè)試的相關(guān)方法

測(cè)試手段 1 CTS

用來(lái)確保某設(shè)備符合 Android 兼容性規(guī)范。原來(lái)想擴(kuò)充它,不是正道。

測(cè)試手段 2 Monkey

1)     應(yīng)用程序的開(kāi)發(fā)者可以測(cè)試自己應(yīng)用的魯棒性。

2)     設(shè)備制造商可以使用猴子對(duì)自己的測(cè)試施行壓力測(cè)試??丛O(shè)備能堅(jiān)持多久。

猴子測(cè)試即可以針對(duì)全局,也可以正對(duì)某個(gè)局部(某個(gè) Category, package 等等)。

執(zhí)行簡(jiǎn)單,效果明顯。

測(cè)試手段 3: ASE

ASE 意思為 Android 腳本環(huán)境, 即我們可以通過(guò)腳本(比如 Python )調(diào)用 Android 的功能,從而定制一些測(cè)試。比如打電話,發(fā)短信,瀏覽網(wǎng)頁(yè),等。

 

我們可以擴(kuò)充它的 API Java 部分) , 并用 python 腳本調(diào)用這些 API,  從而實(shí)現(xiàn)豐富的測(cè)試功能。

 

用于 API 部分可以訪問(wèn)到 Android 全部 API, python 又能靈活部署測(cè)試,所以 ASE 的擴(kuò)展性非常好。

測(cè)試手段 4: Robotium

該工具用于黑盒的自動(dòng)化測(cè)試??梢栽谟性创a或者只有 APK 的情況下對(duì)目標(biāo)應(yīng)用進(jìn)行測(cè)試。

Robotimu 提供了模仿用戶操作行為的 API ,比如在某個(gè)控件上點(diǎn)擊,輸入 Text 等等。

測(cè)試手段 5 單元測(cè)試

Android 本身帶有很多單元測(cè)試?yán)樱覀兛梢园葱枰7滤鼈?,針?duì)某個(gè)應(yīng)用進(jìn)行單元測(cè)試。

注意 Android Instrument 機(jī)制功能非常強(qiáng)大,可以測(cè)試 UI.

總結(jié)

對(duì)于 CTS/Monkey, 我們不需要開(kāi)發(fā),只要執(zhí)行測(cè)試就可以了。

對(duì)于 ASE,  我們可以擴(kuò)充它的現(xiàn)有 API(Java), Python 調(diào)用這些 API 實(shí)現(xiàn)豐富的測(cè)試功能。

Robotium 模仿普通用戶行為,可以試著把一些原來(lái)由測(cè)試工程師做的測(cè)試變成 Robotium 自動(dòng)化實(shí)現(xiàn)。

 

 

 

如何使用robotium進(jìn)行自動(dòng)化測(cè)試

  Robotium是一個(gè)測(cè)試框架能夠方便你為Android應(yīng)用程序編寫(xiě)強(qiáng)大、健壯的自動(dòng)黑盒測(cè)試用例。

  利用Robotium的支持,用例開(kāi)發(fā)人員能夠編 寫(xiě)功能、系統(tǒng)和驗(yàn)收測(cè)試方案Robotium支持Activities、

  Dialogs、Toasts、Menus和Context Menus。

1.       創(chuàng)建一個(gè)簡(jiǎn)單的工程 (可參考本人的日志 《第一個(gè)應(yīng)用 HelloWorld 》,需要對(duì)該工程稍做修改)作為被測(cè)程序, 運(yùn)行后顯示如下界面

 

 

2.       創(chuàng)建一個(gè) Test Project

1).      打開(kāi) eclipse ,選擇 File->New->Project…->Android Test Project ,點(diǎn)擊 Next 。

 

 

 

2).      Test Project Name 中輸入測(cè)試 工程的名稱,如: HelloWorldTest 。選擇 An existing Android Project ,點(diǎn)擊右邊的 Browse… 按鈕。

 

3).      選擇被測(cè)工程,如之前創(chuàng)建的 HelloWorldnp ,點(diǎn)擊 OK 按鈕。

 

4).      會(huì)自動(dòng)選擇和輸入 Build Target Properties ,可以按照默認(rèn)的,不用修改。

 

5).      一個(gè)新建的測(cè)試工程( HelloWorldTest )就創(chuàng)建好了,如下圖:

 

 

3.       創(chuàng)建一個(gè) Test Case

1).      HelloWorldTest->src->com.liliandroid.helloworld.test 上,右擊選擇 New->Class ,創(chuàng)建一個(gè) Test Case 。

 

 

2).      Name 中輸入 Test Case 的名字,如: UITextTest

 

3).      創(chuàng)建好的 Test Case 如下圖:

 

 

4.       導(dǎo)入 robotium.jar

1).      選擇測(cè)試工程 HelloWorldTest 右擊,選擇 Build Path->Configure Build Path…

 

 

2).      在打開(kāi)的 Properties for HelloWorldTest 中點(diǎn)擊 Add External JARs… 按鈕。

 

3).      因?yàn)橹皠?chuàng)建的工程的 SDK 2.2 的,所以選擇 robotium-solo-1.8.0.jar

 

4).      點(diǎn)擊 OK 按鈕。

 

5.       修改 Test Case

打開(kāi) UITextTest.java ,輸入以下內(nèi)容并保存:

 

package com.liliandroid.helloworld.test;

 

import android.test.ActivityInstrumentationTestCase2;

 

import com.liliandroid.helloworld.ActivityMain;

import com.jayway.android.robotium.solo.Solo;

 

public class UITextTest extends ActivityInstrumentationTestCase2<ActivityMain>{

 

       private Solo solo ;

 

       public UITextTest() {

           super ( "com.liliandroid.helloworld" , ActivityMain. class );

           }

          

       public void setUp() throws Exception {

           solo = new Solo(getInstrumentation(), getActivity());

                }

               

       public void testUI() throws Exception {

           boolean expected = true ;

           boolean actual = solo .searchText( "This" ) && solo .searchText( "is" );

             assertEquals ( "This and/or is are not found" , expected, actual);

          

       }

 

   

}

 

注:這個(gè) Case 是測(cè)試運(yùn)行了 ActivityMain 后的界面上是否有 This is 這兩個(gè)文字。

 

 

 

6.       運(yùn)行測(cè)試程序

選擇測(cè)試工程 HelloWorldTest 右擊,選擇 Run As->Android JUnit Test 運(yùn)行測(cè)試程序

 

 

運(yùn)行完后的測(cè)試結(jié)果界面( Pass

 

 

 

運(yùn)行完后的測(cè)試結(jié)果界面( Fail

 


 

參考網(wǎng)址:

http://code.google.com/p/robotium/

 

http://hi.baidu.com/maguowei/home

http://www./?uid-115892-action-viewspace-itemid-223476

http://wenku.baidu.com/view/d8e404d149649b6648d74767.html

http://dejico./logs/82890579.html

http://blog.csdn.net/zjujoe/archive/2010/06/23/5689324.aspx

http://hi.baidu.com/tang157/blog/item/584bfbc611e8450b9d163dd9.html

http://tech./?p=171

 

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多