(JAVA) Как добавить окно селенового веб-драйвера внутри AWT.Frame, чтобы использовать Action Listeners - PullRequest
0 голосов
/ 28 февраля 2020

Хочу сделать что-то похожее на Selenium IDE , чтобы стать частью решения по автоматизации. Так что, когда я открываю браузер веб-драйвера, он начинает слушать мои действия мыши и клавиатуры, а затем действия получить список в окне консоли

Я пытался создать новый класс с именем DriverListener, и этот класс наследует класс "Frame" , чтобы иметь возможность использовать "MouseListener" , затем он реализует "WebDriver" , "MouseListener" интерфейсы

Я реализовал все необходимые методы для обоих "webDriver" чтобы иметь возможность использовать его функциональность и «Mouse Listener», чтобы иметь возможность прослушивать действия, выполняемые на webDriver

, но в настоящее время мне нужно знать, как добавить браузер webDriver внутри фрейма, который отвечает за прослушивание действий

Пример кода:

public class DriverListener extends Frame implements WebDriver, MouseListener
{
    private WebDriver lDriver;
    private Frame driverFrame;

    public DriverListener(WebDriver driver)
    {
        lDriver = driver;
        addMouseListener(this);
    }

// WebDriver methods implementation
    public void get(String url) 
    {
        lDriver.get(url);
    }
.
.
.
    public Options manage() 
    {
        return lDriver.manage();
    }

// mouseListener methods implementation
    public void mouseClicked(MouseEvent e) 
    {
        System.out.println("Mouse Clicked ");
        System.out.println("X: "+ e.getX()+ " Y: "+ e.getY());      
    }
.
.
.
    public void mouseReleased(MouseEvent e) 
    {
        System.out.println("Mouse Release ");
        System.out.println("X: "+ e.getX()+ " Y: "+ e.getY());      
    }

//Frame Initialization
    private void initializeFrame()
    {
        driverFrame = new Frame();
        int xPosition = lDriver.manage().window().getPosition().getX();
        int yPosition = lDriver.manage().window().getPosition().getY();
        int width = lDriver.manage().window().getSize().getWidth();
        int height = lDriver.manage().window().getSize().getHeight();

        Rectangle frameWindow = new Rectangle(xPosition, yPosition, width, height);
        driverFrame.setBounds(frameWindow);
        driverFrame.setLayout(null);
        driverFrame.setVisible(false);
    }
}

1 Ответ

0 голосов
/ 29 февраля 2020

Для тех, у кого такая же проблема, как у меня, или кому нужна помощь в той же теме c, я нашел очень полезный программный инструмент c, который называется BRAP (Browser Recorder And Player) на Java вы можете проверить инструмент по этой ссылке. https://github.com/nobal/BRAP

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...