日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Robotium只有apk文件测试实例

發布時間:2025/5/22 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Robotium只有apk文件测试实例 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在正常的測試流程中,我們測試人員是不會拿到被測試程序的源碼的,只有生成的安裝程序,也就是APPapk文件,這個時候,我們就無法按照有源碼的時候再測試了。但是robotium也可以對這類程序進行測試的,具體方法如下:

?

一,設置環境變量

1. 配置ANDROID_HOMEandroid sdk的安卓目錄,例如:D:\android-sdk

2. path下添加這兩個:

%ANDROID_HOME%\tools;%ANDROID_HOME%\platform-tools;

?

二, 安裝簽名文件

1. 因為robotium要求被測應用和測試代碼要有一致的簽名, 所以我們需要把下載到的apk,通過re-sign.jar來產生debug keyapk,這個重新生成的apk就會跟測試項目簽名一致了

re-sign.jar可以從這里下載到:http://www.troido.de/re-sign.jar

2. 下載完后,在命令行下 通過 java -jar re-sign.jar就會出現一個窗口,然后將apk拖到這個窗口中,就會自動生成一個debug keyapk

產生新apk的過程中會彈出一個信息框,記得截下圖,因為里面有兩個信息我們等會的代碼中需要用到



?

3. 安裝簽名后的apk

1)模擬器安裝

打開模擬器(模擬器器一定要打開才能安裝成功),然后打開命令行 adb install shxw_3.1.8_debug.apk (新生成apk的名稱) 或者雙擊apk文件也可以安裝,安裝成功就可以再模擬器里看到該應用的圖標了。

2)真機安裝

? 如果使用真機的話,將手機連接到電腦,將簽名后的app安裝到手機上即可。可以用adb命令安裝,也可以借助于91助手等軟件安裝。

?

三,創建項目(使用搜狐新聞apk)

1. 打開Eclipse,點擊File->New一個Android Test Project ApkTest, 然后點擊下一步的時候選擇This project(因為我們沒有搜狗新聞的源碼),然后選擇要在哪個android版本上測試。

2. 在該項目下創建一個包,com.neusoft.test,在該包下創建FirstTestCases類,如下:

package com.neusoft.test;

import static org.junit.Assert.*;

import org.junit.After;

import org.junit.Before;

import org.junit.Test;

import android.test.ActivityInstrumentationTestCase2;

import android.view.View;

import com.robotium.solo.Solo;

?

public class FirstTestCases extends? ActivityInstrumentationTestCase2 {

??????

?????? private static final String TARGET_PACKAGE_ID="com.sohu.newsclient";

?????? private static final String LAUNCHER_ACTIVITY_FULL_CLASSNAME="com.sohu.newsclient.app.SplashActivity";

?????? //聲明一個Class類型的變量,用于ActivityInstrumentationTestCase2加載啟動被測程序

?????? private static Class launcherActivityClass;

?????? private Solo solo;

?????? Operation oper=null;

?????? //靜態加載auncherActivityClass也就是被測程序主類

??? static{

????????????? try {

???????????????????? launcherActivityClass = Class

?????????????????????????????????? .forName(LAUNCHER_ACTIVITY_FULL_CLASSNAME);

????????????? } catch (ClassNotFoundException e) {

???????????????????? throw new RuntimeException(e);

????????????? }

?????? }

?????? //構造函數,傳入TARGET_PACKAGE_ID,launcherActivityClass即可

?????? public FirstTestCases()

?????? {

????????????? super(TARGET_PACKAGE_ID,launcherActivityClass);

?????? }

?????? @Before

?????? public void setUp() throws Exception {

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

?????? }

?

?????? @After

?????? public void tearDown() throws Exception {

????????????? solo.finishOpenedActivities();

?????? }

?

?????? @Test

?????? public void test_switchtabs() {

?????????????

????????????? View view=null;

????????????? //刊物標簽

????????????? oper=new Operation(solo);

????????????? oper.ScrollToSecondPage();?

????????????? assertTrue(solo.searchText("已經訂閱 "));

????????????? //新聞標簽???????????

????????????? view=solo.getView("com.sohu.newsclient:id/text_news_center");

????????????? solo.clickOnView(view);

????????????? solo.sleep(3000);

????????????? assertTrue(solo.searchText("要聞"));

????????????? //組圖

????????????? view=solo.getView("com.sohu.newsclient:id/text_news_picture");

????????????? solo.clickOnView(view);

????????????? solo.sleep(3000);

????????????? assertTrue(solo.searchText("精選"));

????????????? //更多

????????????? view=solo.getView("com.sohu.newsclient:id/text_news_more");

????????????? solo.clickOnView(view);

????????????? solo.sleep(3000);

????????????? assertTrue(solo.searchText("閱讀設置"));

?????????????

?????? }

?

}

3. 右鍵該項目,選擇property然后選擇java build path, 選擇 Add External JARs,選擇下到的robotium-solo-5.1.jar,請到網上下載最新的包!

4. 在跑測試用例之前,還需要修改下AndroidManifest.xml文件的android:targetPackage為被測應用的根的包名

?

android:name="android.test.InstrumentationTestRunner"

android:targetPackage="com.sohu.newsclient" />

?

四, 運行測試用例

在測試用例文件上右擊,選擇run asà android junit test,就可以進行測試了。運行結束,在Eclipse左右會顯示運行結果(如下圖所示),如果出錯,可以去查看logcat,排查錯誤的原因。



?????? 網上還有一個不錯的教程:http://www.robotium.cn/archives/476,可供參考

轉載于:https://www.cnblogs.com/eagleking0318/p/6520958.html

總結

以上是生活随笔為你收集整理的Robotium只有apk文件测试实例的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。