狠狠撸
Search
Submit Search
應用 Sikuli 在 Android 設備上執行自動化測試
?
3 likes
?
3,468 views
Jz Chang
2014/08/15 @ KKBOX
Read less
Read more
1 of 34
Download now
Downloaded 38 times
More Related Content
應用 Sikuli 在 Android 設備上執行自動化測試
1.
Mark ?Chang ?-?‐
?測試開發部 應用 Sikuli ?在 Android ?設備上執行自動化測試 ?
2.
?? What ?is
?GUI ?Testing? ? ?? Sikuli ? ?? Apply ?Sikuli ?to ?Android ?automation ?testing ? ?? Demo: ?Android ?pattern ?unlock ? ?? Conclusion ? ?? Q ? ?A ? ? Outline
3.
?? GUI ?testing
?is ?a ?test ?of ?the ?application’s ?user ?interface ?and ?verification ?if ?the ?application ?functions ?work ?correctly. ? What ?is ?GUI ?Testing?
4.
?? UI ?自動化測試會抓取元件的
text、content-?‐desc ? 等資料來抓取某個元件後,再對此元件做操作 ? How ?to ?do ?GUI ?Testing
5.
?? 但有時候某些元件可能沒有這些明確的資料,在實作上 確實不好處理 ? Problem
6.
?? 我們只能抓取到整個元件,但不能調整一點聆的年代範圍 ? Problem
只能抓到整個 slider 但我們希望
7.
How ?do ?we
?solve ?this ?problem? ?
8.
?? 一種以「影像辨識」為基礎的測試工具,它可以用來自 動化的在一個 GUI
圖形界面上進行操作和測試 ? ?? Sikuli ?不用知道元件的屬性值 ? ?? 透過截圖方式幫助我們自動操作電腦的一種方式 ? ?? Sikuli ?腳本就是實現這一過程的一種腳本語言 Sikuli
9.
?? 作者: 張琮翔
Tsung-?‐Hsiang ?Chang ? ?? 教育背景 ? –? 博士: 麻省理工學院,電腦科學與人工智慧實驗室 ? –? 碩士與學士: 台灣大學資訊工程研究所 ?? Sikuli 論文發表在「User ?Interface ?Software ?and ?Technology」會議上(人機互動領域) ? ?? Sikuli: ?Using ?GUI ?Screenshots ?for ?Search ?and ?Automation ? Sikuli
10.
?? 可執行於 Windows、Mac
?OS 和 Linux 作業系統 ? ?? Script ?language: ?Jython ? ?? Applications ? –? It ?can ?interact ?with ?many ?types ?of ?UI ?elements ? –? More ?complex ?scripts ?can ?respond ?to ?screen ?events ? Sikuli
11.
?? Click ?on
? ? ?? Which ?row? ? ?? Which ?column? ? ?? Which ?component ?ID? ? ?? Which ?name? ? ?? Which ?label? ? Think ?Programmingly
12.
Think ?Sikuli ??
What ?you ?see ?is ?what ?you ?script ?
13.
開啟應用程式 等待圖示出現 點擊圖示後,鍵盤輸入
www.google.com 鍵盤控制 檢查圖示是否出現
14.
What’s ?wrong? ?
Turn ?on ?the ?bluetooth
15.
Solution
16.
1.? 直接透過使用者介面操作 ?
? Execute ?Sikuli ?Script
17.
Execute ?Sikuli ?Script
18.
2.? 透過 command
?line ?來執行 ? –? 撰寫好的 script ?儲存檔案的附檔名為 sikuli ? –? Example: ? ? Execute ?Sikuli ?Script
19.
Execute ?Sikuli ?Script
?? Sikuli ?預設辨識圖片時間為 ?3 ?秒鐘,如果沒找到會 拋出 FindFailed ?的 ?exception
20.
Execute ?Sikuli ?Script
?? 捕抓 FindFailed ?的 ?exception
21.
How ?to ?apply
?Sikuli ?to ?Android ?automation ?testing ?
22.
How ?to ?operate
?android ? ?smartphone ?through ?the ?computer ?
23.
?? 免 root
即可透過輸出到電腦螢幕的模擬器來控制手機 ? ?? 能透過電腦的鍵盤或滑鼠操作手機 ? ?? 可透過 USB、Wi-?‐Fi、3G/LTE ?等連接方式至電腦端 ? Why ?Mobizen?
24.
?? 透過 Sikuli
?來做圖形解鎖操作 ? Demo: ?Android ?pattern ?unlock 無法抓取到 9 個解 鎖點元件的屬性
25.
1 2
26.
?? Sikuli ?系統預設選取的位置為圖片中心點
? ?? 我們須調整點選目標元件的目標位置偏移 ? Demo: ?Android ?pattern ?unlock
27.
?? 可調整圖片辨識相似度 ? Demo:
?Android ?pattern ?unlock
28.
Demo: ?Android ?pattern
?unlock Pattern
29.
Demo: ?Android ?pattern
?unlock Demo
30.
?? 透過「抓取元件的屬性值」與「影像辨識」執行自動化 測試,兩種各有所限制 ? 1.?
「抓取元件的屬性值」缺點 ? –? 自己刻的 ?UI ?元件比較不好操作 ? ? 2.? 「影像辨識」缺點 ? –? 不同解析度螢幕的問題、執行速度較慢 ? Comparison
31.
抓取元件屬性值 影像辨識
32.
?? Sikuli ?顛覆原本我們使用的方式,而變成直接透過影 像辨識定位某個元件後再對它操作
? ?? 只需要簡單的擷圖工具,把要控制的物件擷圖下來,直 接放在語法編輯區中,就可以設計你要進行的動作 ? ?? 「抓取元件的屬性值」與「影像辨識」兩種方式混合使 用才是王道! ? Conclusion
33.
? Q ? ?A
?
34.
Thank ?You ?
Download