2016-08-29 3 views
2

Я использую селен для автоматизации веб-приложений. Но во время автоматизации на некоторых веб-страницах я получаю HTTP-логин (запрашивающий имя пользователя и пароль). Для этого я использую сикули для автоматизации этих всплывающих окон. Я использую для него следующий код:Можем ли мы использовать сикули для автоматизации http pop up?

private void loginWithSikuliInFirefox(){ 
     try{ 
     Screen screen=new Screen(); 
     Pattern image1=new Pattern("Pictures/Uname.png"); 
     Pattern image2=new Pattern("Pictures/Passwrd.png"); 
     Pattern image3=new Pattern("Pictures/Ok1.png"); 

    screen.wait(image1,10); 
    screen.type(image1,userName); 
    screen.type(image2,password); 
    screen.click(image3); 
     } 
     catch(Exception e){ 
      System.out.println("There is no alert"); 
     } 
    } 

    private void loginWithSikuliInChrome(){ 
     try{ 
     Screen screen=new Screen(); 
     Pattern image1=new Pattern("Pictures/Username.png"); 
     Pattern image2=new Pattern("Pictures/Password.png"); 
     Pattern image3=new Pattern("Pictures/Login.png"); 

    screen.wait(image1,10); 
    screen.type(image1,userName); 
    screen.type(image2,password); 
    screen.click(image3); 
     } 
     catch(Exception e){ 
      System.out.println("There is no alert"); 
     } 
    } 

Я делаю две разные функции, чтобы работать в Firefox и Chrome. Они работают отлично.

Итак, использование sikuli - лучший вариант или я должен использовать что-то еще? Я попытался переключиться на предупреждение, но это не работает в хроме. Пожалуйста, предложите что-то другое, кроме как переключиться на предупреждение, если сикули не лучший вариант для него.

Заранее спасибо

ответ

1

Если вы обращаетесь к прямой URL, который имеет Htaccess/HTTP всплывающее окно, то вы можете пойти с http://username:[email protected] рисунком. Он обходит всплывающее окно входа. Таким образом, выполнение будет быстрее реализации Sikuli. Также вам нужно будет добавить файлы исполнения Sikuli, Jars и т. Д. В папку проекта.

Также вы можете использовать AutiIt для обработки всплывающего окна htaccess, но оно будет работать только с средой Windows. Sikuli будет работать с Win/Linux/Mac. Но вам придется записывать разные изображения для разных комбинаций OS/Browser. то есть код, который вы написали для Win Chrome может не работать с Mac Chrome.

+0

Спасибо за ответ. Я использую систему mac. Поэтому я не могу использовать AutoIT. И если я использую сикули, тогда мне нужно сделать две разные функции и нужно поставить браузер на передний план. Я использовал URL url = http: // username: [email protected], но после его использования или использования driver.get (url) есть так много всплывающих окон, которые мне нужно автоматизировать. предложите что-нибудь еще, если у вас есть какие-либо другие предложения. –

+0

Эти всплывающие окна - это всплывающие окна или веб-сайты? На веб-основе можно обращаться через «Alert» или «switchwindow». Else sikuli лучше использовать, если изображения этих всплывающих окон не меняются. –