У меня есть 3 поля поля поиска и 3 вопросительных знака рядом с каждым полем поиска. Если я попытаюсь щелкнуть второй вопросительный знак, он всегда щелкает по второму полю поиска, а не нажимает кнопку вопроса. [Sikuli не нажимает на точный элемент]1 Пожалуйста, ознакомьтесь с нижеследующим изображением, которое я приложил. Нажмите «1», чтобы посмотреть изображение ... Pls не подходит с координатами. Я не должен использовать координаты в своем проекте.3 поиск с 3 вопросительными знаками, Sikuli Не удалось щелкнуть 2-й элемент
ответ
Ну, это не может быть полный ответ, который не использует Region, координатыautoIT, как вы ожидаете.
Это код в Сикули, который использует метод findAll()
.
Я создал фиктивную окно, как на скриншоте ниже:
Редактировать
public void clickButton() throws AWTException, FindFailed
{
m_sikscr=new SikuliScript();
m_screen=new Screen();
m_sikscr.switchApp("Java Swing Examples");
m_screen.wait((double)3.0);
int i=0;
Match[] array=new Match[5];
Iterator<Match> rs1 = m_screen.findAll(new Pattern("./img/Button1.png"));
while(rs1.hasNext())
{
array[i]=rs1.next();
i++;
}
m_screen.click(array[1]);
}
Это щелкает только вторую кнопку на экране.
Надеюсь, что это сильно заставляет думать о том, чтобы заставить его работать полностью.
Привет, действительно спасибо за пример кода. Но вот здесь я использую его в while loop, поэтому он просто отправляет «текст» ко всем текстовым полям и нажимает на все кнопки, но мой девиз - щелкнуть только кнопкой 2-го вопроса. –
Изменен код, чтобы щелкнуть только вторую кнопку. – MKay
Спасибо большое :) попробует и вернется к вам :) –
Если вы используете селен, зачем беспокоиться о том, что Сикули найдет похожие элементы. Это модальный диалог веб-приложения, который вы обрабатываете? – MKay
Пожалуйста, разместите соответствующий код. С предоставленной информацией сейчас очень сложно определить проблему. – Sighil
Yea Модальное диалоговое окно, если его предупреждение или дочернее окно я могу легко автоматизировать. Когда я прошел с разработчиками, они сказали мне, что он был представлен DevModalDialogBox (arg1, arg2, arg3). Если есть какой-либо другой способ обработки ящиков ModalDialog в selenium pls, дайте мне знать. Но убедитесь, что мы не используем AutoIT, класс Robot и Corodinates. –