Тестирование: Работа с текстом и комбо-боксами

1.Как забрать текст из элемента на странице:

Код, который позволяет забрать текст из элемента, с указанным локатором в указанную переменную

$text = $this->webDriver->findElement(WebDriverBy::Locator($Locator))->getText();

Где:

$text - переменная, в которую попадет значение
$this->webDriver->findElement(WebDriverBy::Locator($Locator)) - строка, где мы ищем элемент по указанному локатору
getText() - указывает что мы делаем с элементом, в данном случае забираем текст

2.Методы, которые печатают указанный $text в текст-боксы с указанным $Locator

Методы используется для заполнения форм

->typeByID($id,$text)
->typeByName($name,$text)
->typeByCssSelector($cssSelector,$text)
->typeByXpath($xpath,$text)

Общая структура метода ->typeByLocator($Locator,$text)

public function typeByLocator($Locator,$text)
    {
        $this->webDriver->findElement(WebDriverBy::Locator($Locator))->getLocationOnScreenOnceScrolledIntoView(); //Находим элемент на странице, скроллим до него при необходимости
        $this->webDriver->findElement(WebDriverBy::Locator($Locator))->click(); //кликаем в текст-бокс
        $this->webDriver->findElement(WebDriverBy::Locator($Locator))->clear(); //очищаем поле ввода(если в нем уже есть какие то данные)
        $this->webDriver->findElement(WebDriverBy::Locator($Locator))->click(); //Кликаем еще раз
        $this->webDriver->findElement(WebDriverBy::Locator($Locator))->sendKeys(array(WebDriverKeys::CONTROL, 'a'));
        $this->webDriver->findElement(WebDriverBy::Locator($Locator))->sendKeys($text); //Заполняем форму текстом из переменной $text
    }

3.Методы, которые выбирают значения из комбо-боксов с указанным $Locator по $text

Методы используется для заполнения выпадающих списков, когда варианты в комбо-боксах доступны в виде текста

->selectComboBoxByName($name,$text)
->selectComboBoxByClassName($className,$text)

Общая структура метода ->selectComboBoxByLocator($Locator,$text)

public function selectComboBoxByLocator($Locator,$text)
    {
        $selectingComboBox = $this->webDriver->findElement(WebDriverBy::Locator($Locator)); //Находим комбо-бокс по локатору и определяем его в переменную
        $selection = new WebDriverSelect($selectingComboBox); //Вызываем WebDriverSelect на этот комбо-бокс
        $selection->selectByVisibleText($text); //Выбираем значение из выпадающего списка комбо-бокса по тексту 
    }

4.Метод, который выбирает значение из комбо-боксов с указанным $Locator по $value

Метод используется для заполнения выпадающих списков, когда варианты в комбо-боксах доступны в виде айдишников

->selectComboBoxValueByID($id,$value)

Общая структура метода ->selectComboBoxValueByID($id,$value)

public function selectComboBoxValueByID($id,$value)
    {
        $selectingComboBox = $this->webDriver->findElement(WebDriverBy::id($id)); //Находим комбо-бокс по локатору и определяем его в переменную
        $selection = new WebDriverSelect($selectingComboBox); //Вызываем WebDriverSelect на этот комбо-бокс
        $selection->selectByValue($value); //Выбираем значение из выпадающего списка комбо-бокса по айдишнику
    }

5.Как отправлять/прикреплять в формы файлы

Способ отправки файлов в формы

      $fileInput = $this->webDriver->findElement(WebDriverBy::name('z_report')); //Объявляем кнопку прикрепления файлов  в переменную
      $fileInput->setFileDetector(new LocalFileDetector());
      $fileInput->sendKeys('..\..\..\logs\screen.png'); //Прикрепляем файл с помощью действия "sendKeys" где указываем путь до файла

09.12.2010 08:34

Комментарии

Комментариев пока нет.


Copyrights © 2007 - 2026 YaPro.Ru