中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

擴展InstrumentationTestRunner,傳遞自定義參數

發布時間:2020-04-24 18:44:35 來源:網絡 閱讀:1687 作者:心如明鏡 欄目:開發技術

 通過繼承InstrumentationTestRunner,就可以傳遞自定義參數到TestRunner。這里是傳遞port、packageName、activityName,其中port是用于在手機側啟動一個TCP服務的端口,packageName和activityName是用于指定首個啟動的activity的參數配置:

  1. import android.os.Bundle; 
  2. import android.test.InstrumentationTestRunner; 
  3.  
  4. public class AthrunInstrumentationTestRunner extends InstrumentationTestRunner { 
  5.     
  6.     private static String packageName = "com.taobao.fario"
  7.     
  8. private static String activityName = "com.taobao.fario.MainActivity"
  9.                  
  10.     private static String port = "1234"
  11.     
  12.     public static String getPort() { 
  13.         return port; 
  14.     } 
  15.  
  16.     public static String getPackageName() { 
  17.         return packageName; 
  18.     } 
  19.  
  20.     public static String getActivityName() { 
  21.         return activityName; 
  22.     } 
  23.      
  24.     @Override 
  25.     public void onCreate(Bundle arguments) { 
  26.         if (arguments != null) { 
  27.             String port = arguments.getString("port"); 
  28.             String packageName = arguments.getString("packageName"); 
  29.             String activityName = arguments.getString("activityName"); 
  30.             if (port != null) { 
  31.                 AthrunInstrumentationTestRunner.port = port; 
  32.             } 
  33.             if (packageName != null) { 
  34.                 AthrunInstrumentationTestRunner.packageName = packageName; 
  35.             } 
  36.             if (activityName != null) { 
  37.                 AthrunInstrumentationTestRunner.activityName = activityName; 
  38.             } 
  39.         } 
  40.          
  41.         super.onCreate(arguments); 
  42.     } 

執行命令變成:

  1. adb -s SH14MTJ01900 shell am instrument -w -e port 1234 -e class org.athrun.remoterunner.TravelTest#test org.athrun.remoterunner/org.athrun.instrumentation.AthrunInstrumentationTestRunner 

在Testcase中如何使用傳入的packageName和activityName:

  1. public class TravelTest extends ActivityInstrumentationTestCase2 { 
  2.      
  3.     private static String getPkgName() { 
  4.         String packageName = AthrunInstrumentationTestRunner.getPackageName(); 
  5.         return packageName; 
  6.     } 
  7.  
  8.     private static String getActivityClassStr() throws ClassNotFoundException { 
  9.         String activityName = AthrunInstrumentationTestRunner.getActivityName(); 
  10.         return activityName; 
  11.     } 
  12.  
  13.     public TravelTest() throws Exception { 
  14.         super(getPkgName(), getActivityClassStr()); 
  15.     } 

-e 是屬于擴展參數,使用這種方法是可以不斷擴展的。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

南安市| 衡水市| 通道| 喀喇沁旗| 北流市| 阜康市| 汕头市| 西乌珠穆沁旗| 西乌| 临泉县| 察雅县| 怀仁县| 梁平县| 靖江市| 日土县| 藁城市| 邓州市| 江达县| 玉门市| 阳城县| 桦川县| 台前县| 阳谷县| 礼泉县| 扶风县| 开江县| 乐至县| 淮阳县| 株洲县| 仙游县| 黄浦区| 翼城县| 辽中县| 周至县| 武汉市| 唐海县| 宜宾县| 南昌县| 金平| 齐河县| 红桥区|