真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

基于InstrumentationFramework的開(kāi)源項(xiàng)目AndroidMonkey是怎樣的

基于Instrumentation Framework的開(kāi)源項(xiàng)目AndroidMonkey是怎樣的,很多新手對(duì)此不是很清楚,為了幫助大家解決這個(gè)難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來(lái)學(xué)習(xí)下,希望你能有所收獲。

創(chuàng)新互聯(lián)公司是專業(yè)的三山網(wǎng)站建設(shè)公司,三山接單;提供網(wǎng)站建設(shè)、做網(wǎng)站,網(wǎng)頁(yè)設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行三山網(wǎng)站開(kāi)發(fā)網(wǎng)頁(yè)制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛(ài)的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來(lái)合作!

最大的一個(gè)疑問(wèn)是怎么monkey是用instrumentation來(lái)注入event呢?這樣的話它怎么做到跨進(jìn)程應(yīng)用的事件發(fā)送呢?因?yàn)楦鶕?jù)本人的了解instrumentation框架是不能跨進(jìn)程的,而monkey是絕對(duì)跨進(jìn)程的!

	@Override 	public int fireEvent(Instrumentation testRuner) { 		String note; 		if (mAction == KeyEvent.ACTION_UP) { 			note = "ACTION_UP"; 		} else { 			note = "ACTION_DOWN"; 		}  		System.out.println(":Typing Key (" + note + "): " + mKeyCode 				+ "    // "); 		try { //			testRuner.sendKeySync(getEvent()); 			testRuner.sendKeyDownUpSync(mKeyCode); 		} catch (Exception e) { 			System.out.println("Failed to send key (" + note + "): " + mKeyCode 					+ "    // "); 			return MonkeyEvent.INJECT_FAIL; 		}  		return MonkeyEvent.INJECT_SUCCESS; 	}

糾結(jié)了一段時(shí)間后返回下載地方看了下概覽,很短,但很清楚的描述了這個(gè)不是我想要的monkey,而是原生monkey的一個(gè)修改后做成的android庫(kù)。既然碰上了就順便翻譯下它的介紹和使用吧,反正就那么幾句話,待今后有時(shí)間再來(lái)進(jìn)一步研究它了,至于它是否真的如我所言不能跨進(jìn)程,就留待今后或者大家來(lái)驗(yàn)證了。

1. 概覽

AndroidMonkey是一個(gè)android庫(kù)。事實(shí)上它是在基于原生monkey的基礎(chǔ)上做成的一個(gè)方便測(cè)試和分析(比如:代碼覆蓋率)的一個(gè)測(cè)試庫(kù)。

測(cè)試人員/用戶可以很方便的使用這個(gè)庫(kù)來(lái)創(chuàng)建針對(duì)安卓gui應(yīng)用的隨機(jī)測(cè)試腳本


Why this library:

為什么使用這個(gè)庫(kù):

  • 使用這個(gè)庫(kù)的話你可以只用幾行代碼就能編寫(xiě)出針對(duì)你的app的隨機(jī)測(cè)試用例

  • 你可以在你的測(cè)試代碼中加入斷言從而很方便的去判斷你的SUT(被測(cè)系統(tǒng)/應(yīng)用)的當(dāng)前情況(如果你用monkey的話是很難做到的)

  • 你可以通過(guò)隨即測(cè)試對(duì)你的app做覆蓋率分析,這對(duì)我們的研究是很有用的(像我現(xiàn)在所做的)(譯者注:其實(shí)最后這一句話應(yīng)該這樣子去理解:如果你是一個(gè)公司的采購(gòu),你想去評(píng)估一個(gè)應(yīng)用是否足夠穩(wěn)定滿足你的需求,那么你就會(huì)先試用做一些前期研究)


Code example/代碼實(shí)例

public class ContactAdderTest extends                 ActivityInstrumentationTestCase2 {          private int NUM_EVENTS = 1000;          public ContactAdderTest() {                 super("com.example.android.contactmanager", ContactAdder.class);         }          @Override         protected void setUp() throws Exception {                 super.setUp();                 setActivityInitialTouchMode(false);          }          public void testMonkeyEvents() {                 Display display = getActivity().getWindowManager().getDefaultDisplay();                 Instrumentation inst = getInstrumentation();                 PackageManager pm = getActivity().getPackageManager();                  Monkey monkey = new Monkey(display,                                 "com.example.android.contactmanager", inst, pm);                  // Generate and fire a random event.                  for (int i = 0; i < NUM_EVENTS; i++) {                         monkey.nextRandomEvent();                 }          } }

 
  


 

2.使用簡(jiǎn)介

使用簡(jiǎn)介

簡(jiǎn)介

以下是介紹如何使用這個(gè)庫(kù):

詳情

C創(chuàng)建android項(xiàng)目

先創(chuàng)建一個(gè)Android Test Project項(xiàng)目,通過(guò)Android ADT[http://developer.android.com/sdk/eclipse-adt.html]   添加對(duì)AndroidMonkey庫(kù)的引用(引用jar或者項(xiàng)目)

創(chuàng)建測(cè)試類

創(chuàng)建一個(gè)普通的ActivityInstrumentationTestCase2測(cè)試類,然后加入如下的測(cè)試用例代碼:

public void testMonkeyEvents(){ Display display = getActivity().getWindowManager().getDefaultDisplay(); Instrumentation inst = getInstrumentation(); PackageManager pm = getActivity().getPackageManager(); Monkey monkey = new Monkey(display, packageToTest, inst, pm); for (int i = 0; i < NUM_EVENTS; i++){ monkey.nextRandomEvent(); } }

看完上述內(nèi)容是否對(duì)您有幫助呢?如果還想對(duì)相關(guān)知識(shí)有進(jìn)一步的了解或閱讀更多相關(guān)文章,請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對(duì)創(chuàng)新互聯(lián)的支持。


標(biāo)題名稱:基于InstrumentationFramework的開(kāi)源項(xiàng)目AndroidMonkey是怎樣的
路徑分享:http://weahome.cn/article/jjgjsi.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部