2016-07-04 5 views
1

Я пишу некоторую автоматизацию скрипта в java, которая ищет некоторые записи для мобильного номера и находит многократную запись в gridview. Рядом с этим я пытаюсь загрузить все записи, нажав кнопку загрузки (несколько). я написал ниже код, но не работаетКак нажимать на некоторое изображение, которое происходит несколько раз на экране с сикули с java?

public static Screen s = new Screen(); 
Iterator <Match> matches =s.findAll("downloadbtn_wh.png"); // s is screen 
Pattern pButton = new Pattern("downloadbtn_wh.png"); 

Match mButton; 

while (matches.hasNext()) { 
    Match m = matches.next(); // m now could be inspected with debugging 
    s.click(m); // click on drop-down 

    if ((mButton = s.exists(pButton))!=null) { 
     // checks for button image and saves the match 
     s.click(mButton); // just click the match, do not search again 
     break; 
    } 
} 

Этот скрипт останавливается после нажатия на первой кнопке загрузки, но я ожидаю, что он должен нажать на каждую кнопку загрузки в GridView. Images

ответ

1

Приведенный ниже код выполнит то, что вам нужно.

@Test 
public void multiplePattern() throws FindFailed{ 

    ImagePath.setBundlePath("C:\\patterns\\"); 

    Screen s = new Screen(); 
    Iterator<Match> it = s.findAll("downloadArrow.png"); 

    while(it.hasNext()){ 

     it.next().highlight(1); 
    } 
} 

ПРИМЕЧАНИЕ: Пожалуйста, обратите внимание, что в приведенном выше примере я на самом деле не только нажатия, но выделяя обнаруженные закономерности только для визуализации процесса. Просто замените highlight(1) на click(), прежде чем использовать его в своем скрипте.

+0

@Steve Что именно не работает? Ошибки? –

+0

Работал !!!!! Спасибо Евгению !!!!!! Добавлен click() вместо выделения() :) – Steve

+1

@Steve С удовольствием узнаем, что это помогло. Примите мой ответ. –

0
Screen scn = new Screen(); 
Iterator <Match> itr = scn.findAll("image"); 
{ 
    while(itr.hasNext()) 
    { 
     itr.next().click(); 
    } 
} 
+2

Просто размещение некоторого кода не является ответом на вопрос. Измените свой вопрос и добавьте объяснение в свой код. –