ДжазТим — надежный технологический партнер

Agile разработка ПО на Java

Вышла Новогодняя версия 1.23 продукта XML2Selenium

xml2selenium logo

Пожалуйста, ознакомьтесь с изменениями в версии 1.23 и перейдите на новую версию продукта.

Новый функционал версии 1.23

1) Улучшена работа с модальными окнами: реализовано закрытие модального окна по завершению теста, запрещено использование тега <window>  при работе с модальными окнами.

2) Добавлена возможность изменять переменные, созданные с помощью тега <variable>. Добавлены атрибуты:

Пример:

<?xml version="1.0" encoding="UTF-8"?>
    <!-- Объявляем изменяемую переменную со значением 111 -->
    <variable ref="var1" changeable="true" value="111"/>
    <!-- Меняем её значение на 555 -->
    <variable change="var1" value="555"/>
    <assert first="${var1}" second="555" action="equals"/>
</test>

Допускается изменять переменные, которые были объявлены ранее: в этом же тесте, фрейме или уровнем выше:

<variable ref="var1" changeable="true" value="111"/>
<frame>
    <variable change="var1" value="777"/>
    <assert first="${var1}" second="777" action="equals"/>
</frame>

Не допускается изменять переменную, которая была объявлена во фрейме, вне данного фрейма:

<frame>
    <variable ref="var1" changeable="true" value="111"/>
</frame>
<variable change="var1" value="777"/>

3) Добавлена возможность прервать выполнение тега <iterate> по условию. В тег <iterate> добавлен атрибут variableCondition. В этот атрибут необходимо передать имя переменной, на которой цикл прервется. Для этого значение переменной нужно установить в true. Если переменная не была объявлена заранее, она создаётся. Если переменная с таким именем уже существовала, то ей присваивается значение false.

Пример:

<frame ref="breakFrameOnSecondIteration">
    <echo message="${Integer.parseInt(count)+1}"/>
    <variable change="count" 
    value="${Integer.parseInt(count)+1}"/>
    <variable change="condition" 
    value="${Integer.parseInt(count)=4}"/>
</frame>

<iterate for="1,2,3,4,5" variableCondition="condition" 
var="i" run="breakFrameOnSecondIteration"/>

4) В тег <webelement> добавлено новое действие:

Пример:

<webelement action="getHTML" xpath="//div[1]" 
returnValueName="html" />

5) Сделано внутреннее архитектурное улучшение, появилась возможность задавать порядок выполнения плагинов-обработчиков при наступлении определённого событии. Улучшение поможет разработчикам плагинов делать более гибкую настройку.

6) Улучшена валидация: если указан неверный экшен или неверное значение атрибута, для которого возможны только несколько значений (например атрибут by в теге  <combobox> может принимать значения text, value, number), то фреймворк не начнет выполнять тест, а сообщит об ошибке сразу. Так же убраны некоторые лишние атрибуты в xsd для разных тегов: теперь xsd не будет подсказывать неверные атрибуты.

Исправлены проблемы

1) NullPointerException, если groovy-переменная не найдена

2) Не генерируется Behavior report при обращении к несуществующей переменной

3) NullPointerException на linux при указании / в начале пути к файлу в теге <property>

4) При изменении значения выпадающего списка с помощью тега <combobox> не срабатывает onchange событие, на которое подписан данный выпадающий список

5) Некорректно отображаются Business и Behavior reports, когда в именах тестов или тест-кейсов встречается символ ‘%’. Данный символ запрещен к использованию в именах тестов и тест-кейсов.

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

Для Вашей пользы мы выложили в открытый доступ ряд отчётов, которые генерирует XML2Selenium:

Документация продукта XML2Selenium

Служба поддержки:
Skype: xml2selenium
Email: xml2selenium@jazzteam.org
Сайт: http://www.xml2selenium.com