2016-05-31 86 views
0

我是sikuli的新手。 我正在使用它來進行我的java spring standalone應用程序的功能測試自動化。我在屏幕上的多個位置擁有相同的一組圖像(徽標)。並且它們是根據應用程序數據動態生成的。在那種情況下,我如何找到並點擊UI中的某些按鈕/元素。 例如:喜歡,分享,評論文字/圖片將會在Facebook頁面中出現好幾次。因爲我們如何點擊特定的按鈕(facebook僅僅是一個例子),我想爲我的應用程序提供類似的解決方案。如何使用sikulix找到相同的徽標,UI元素

+0

目前尚不清楚你試圖達到什麼樣的目標以及你的問題是什麼?有什麼你正在嘗試,它不工作?請提供更多細節。 –

回答

0

我想你問的是 - 給定一個情況,同一個圖像或UI元素多次出現在同一個頁面上,我怎樣才能在一個位置指定其中一個元素而不是另一個元素?

這樣做的快速簡單的方法是捕獲一張更大的圖片,就像儘可能多的窗口一樣,然後在點擊動作後點擊圓括號中的圖片;這會打開一個窗口讀取文件,匹配預覽和目標偏移量。單擊目標偏移量,使用鼠標滾輪放大,然後單擊要單擊的圖片的確切點。

如果您使用不同的click()命令,並且可以爲每個click()命令設置目標偏移量而不需要新圖片,則可以在捕獲的圖像上的多個位置單擊。

只有這一張圖片,你可以點擊棋盤上的每個方塊,只要你花時間設置每個64點擊()命令的偏移量就可以了。 http://files.chesscomfiles.com/images_users/tiny_mce/cigoL/Chessboard.png

更困難的解決方案將是設置區域,並搜索這些區域的匹配圖片,但爲了你要找的這個應該 - 更多關於區域和設置它檢查下面的鏈接。乾杯!

http://sikulix-2014.readthedocs.io/en/latest/index.html

0

根據你的FB例如,你可以使用setROI()把重點放在頁面頂部後(想象,涵蓋了新聞提要完整後矩形),從那裏,我可以循環:

if exists(profile pic): 
     click(like button) 
    elif exists(profile pic 2): # If you are testing more than one user 
     click(like button) 
    else : type(Key.DOWN) #repeat as needed 

將下一篇文章轉化爲投資回報可能會非常棘手,但如果您可以通過系統上的每個滾輪單擊來調整您的線條,那麼使用WHEEL_DOWN可能會有所幫助。

相關問題