Robotium查詢指定控制項

2022-03-19 02:28:58 字數 1859 閱讀 5504

一、通過id查詢控制項

1  activity act=solo.getcurrentactivity();23

int id=act.getresources().getidentifier("id名稱","id", act.getpackagename());//id名稱通過介面檢視器hierarchyviewer.bat檢視

45 view view=solo.getview(id);

二、相同id控制項區分

1)通過其他子控制項先獲取到父控制項再獲取子控制項。

如:relativielayout下有兩個子控制項(textview和imageview)可以根據textview文件內容獲取到relativelayout控制項

relativelayout parernt=(relativelayout)solo.gettext("").getparent();

2)再根據子控制項在父控制項中的位置確定子控制項。

imeviagew search=(imageview)parernt.getchildat(0);

如果是子控制項id與其他父控制項中的子控制項id相同,而父控制項中的id不同則可以使用           

imeviagew search=(imageview)parernt.findviewbyid(id);來獲取控制項。

三、listview控制項下拉重新整理

1

//先得到listview控制項

2 listview listview=solo.getview(id);34

//儲存座標的陣列

5int location=new

int[2];67

//獲取listiew的座標

8listview.getlocationscreen(location);910

//座標是從左上角開始的如果listview鋪滿整個介面那麼座標可能接近(0,0)

solo.drag(location[0]+10,location[0]+10,location[1],location[1]+listview.getheight(),3)

四、webview測試(robotium很好的支援了webview)

1)首先要看到webview中網頁的原始碼(**可以通過webview.getweburl()來獲得)

2)獲取webview中網頁的標題(webview.gettitle()來獲取)

注:webview中的所有方法都需要ui執行緒中操作,不然會丟擲異常。

1 solo.getcurrentactivity().runonuithread(new

runnable()

8 });

solo中關於webview的方法有

cleartext inwebelement(by by)

clickonwebelement(by by)

entertextinwebelement(by by,string text)

waitforwebelement(by by)

從這些方法中可以看出來網頁中可以通過by類來標識

而by方法有:

by.classname() //了解css的應該知道類選擇器

by.cssselector() //這個直接就是根據css選擇器來的

by.id()//控制項的id

by.name()//控制項的名稱

by.tagname()// 標籤的名稱如

by.textcontent()//控制項中的吻別

by.xpath()

例如:solo.clickonwebelement(by.classname("link-ele"),0);//這個是根據類名來的後面的0是位置原始碼中用到這個類名的控制項太多。

Robotium之Android控制項定位實踐和建議

view source print 1.solo.clickontext note 2.asserttrue solo.searchtext note 2.2 solo.clickontext string text,int match view source print 1.solo.clicko...

指定控制項個數,指定行數,平鋪控制項

一般的for迴圈會是很麻煩的方式,不單單自己很難理解,別人也很難看懂,所謂的測試版演算法 這兒提供乙個思路清晰,絕對沒有bug的演算法 qvectorvint 9 4 2 1 8 4 2 0 0 0 0 0 vint.resize names.size 4 vint.fill 4 vint name...

查詢指定字元

輸入格式 輸入的第一行是乙個待查詢的字元。第二行是乙個以回車結束的非空字串 不超過80個字元 輸出格式 如果找到,在一行內按照格式 index 下標 輸出該字元在字串中所對應的最大下標 下標從0開始 否則輸出 not found 輸入樣例1 mprogramming 輸出樣例1 index 7 輸入...