qileilove

          blog已經(jīng)轉(zhuǎn)移至github,大家請訪問 http://qaseven.github.io/

          簡單介紹如何使用robotium進行自動化測試

           

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

           

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

          1).     打開eclipse,選擇File->New->Project…->Android Test Project,點擊Next

           

           

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

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

          4).     會自動選擇和輸入Build TargetProperties,可以按照默認的,不用修改。

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

           

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

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

           

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

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

           

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

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

           

          2).     在打開的Properties for HelloWorldTest中點擊Add External JARs…按鈕。

          3).     因為之前創(chuàng)建的工程的SDK2.2的,所以選擇robotium-solo-1.8.0.jar

          4).     點擊OK按鈕。

          5.      修改Test Case

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

           

          packagecom.liliandroid.helloworld.test;

           

          importandroid.test.ActivityInstrumentationTestCase2;

           

          importcom.liliandroid.helloworld.ActivityMain;

          importcom.jayway.android.robotium.solo.Solo;

           

          publicclassUITextTestextendsActivityInstrumentationTestCase2<ActivityMain>{

           

                privateSolosolo;

           

                publicUITextTest() {

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

                    }

                    

                publicvoidsetUp()throwsException {

                    solo=newSolo(getInstrumentation(), getActivity());

                       }

                       

                publicvoidtestUI()throwsException {

                    booleanexpected =true;

                    booleanactual =solo.searchText("This") &&solo.searchText("is");

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

                    

                }

           

             

          }

           

          注:這個Case是測試運行了ActivityMain后的界面上是否有Thisis這兩個文字。

           

           

          6.      運行測試程序

          選擇測試工程HelloWorldTest右擊,選擇Run As->Android JUnit Test運行測試程序

           

          運行完后的測試結(jié)果界面(Pass

           

           

          運行完后的測試結(jié)果界面(Fail

           

           

           

          注:

          1.      被測試的工程和測試的工程可以是不同的SDK,但是不知道有什么影響。

          2.      這是在eclipse中進行測試的,也可以在模擬器或者手機上測試。如果需要直接在模擬器或者手機上測試,需要將測試包和被測試包改成相同的簽名。(關(guān)于apk包的簽名和重簽名,請參考本人日志《重新簽名APK文件》)

           

          posted on 2014-05-15 21:20 順其自然EVO 閱讀(826) 評論(0)  編輯  收藏 所屬分類: 自動化測試android

          <2025年8月>
          272829303112
          3456789
          10111213141516
          17181920212223
          24252627282930
          31123456

          導(dǎo)航

          統(tǒng)計

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 吴桥县| 班戈县| 贵南县| 左云县| 和政县| 平乡县| 万全县| 临城县| 禄劝| 寿光市| 迁安市| 新邵县| 根河市| 拉萨市| 沙田区| 教育| 虞城县| 曲麻莱县| 广宗县| 台安县| 马鞍山市| 阿拉善盟| 襄城县| 铜陵市| 芜湖市| 潢川县| 开江县| 贵州省| 雅江县| 闽清县| 呈贡县| 勃利县| 伊宁市| 濮阳县| 富锦市| 乐平市| 韶山市| 安平县| 德昌县| 和硕县| 清远市|