Fitnesse Slim + Selenium: параметризованная иерархия наборов для нескольких браузеров?

Я начинаю с Selenium и FitNesse. Моя цель — создать набор приемочных тестов, который можно будет легко запускать в разных браузерах.

Сначала я написал очень короткую оболочку для Seleniums WebDriver. Функции-оболочки используются в таблицах сценариев, таблицах сценариев и таблицах запросов. Пока все в порядке.

Моя идея состояла в том, чтобы создать иерархию вики-страниц под названием ParameterizedSuites, в которой есть вложенные наборы и тесты любой возможной глубины. Теперь я хотел создать один пакет под названием FirefoxSuite, определяющий переменную ${BROWSER} со значением «firefox» и включающий только ParameterizedSuites. В ParameterizedSuites.SuiteSetUp экземпляр WebDriver будет создан с использованием ${BROWSER}.

Но моя идея не работает. Кажется, я должен включать каждую страницу SetUp, TearDown, Suite и Test отдельно? Моя идея полностью неверна или я что-то упускаю?

Есть ли у кого-нибудь что-то подобное?

Надеюсь, мое описание достаточно ясно, чтобы понять сценарий.

С уважением, Анди


person Andi    schedule 16.12.2012    source источник


Ответы (1)


Я думаю, что вы хотите, это SymbolicLinks. Вы можете использовать символические ссылки, чтобы включить поддерево вики в другое место в вики.

Для получения дополнительной информации о SymbolicLinks обратитесь к местному руководству пользователя или его копии в Интернете: http://www.fitnesse.org/FitNesse.UserGuide.FitNesseWiki.SymbolicLinks

Обычный способ сделать это — фактически создать свой ParameterizedSuite, а затем символически связать его со страницами, которые определяют конфигурацию и предоставляют специализированные страницы SetUp и TearDown. Это своего рода противоположность тому, что вы описываете, но я думаю, что то, что вы делаете, также может работать, если вы используете SymbolicLinks, чтобы сделать страницы частью вики-структуры ваших параметризованных тестов.

FrontPage
  SuiteOne
     TestOne
  ConfigurationOne
     SetUp
     TearDown
     SuiteOneSymolicLink
  ConfigurationTwo
     SetUp
     TearDown
     SuiteOneSymolicLink

В приведенной выше структуре SuiteOne можно запустить через символическую ссылку в ConfigurationOne или ConfigurationTwo. Переменные, определенные на страницах ConfigurationOne или ConfigurationTwo, будут наследовать SuiteOne при запуске через SuiteOneSymbolicLink в каждой иерархии конфигурации. Кроме того, настройки SetUp и TearDown со страниц конфигурации также будут унаследованы.

person Dan Woodward    schedule 17.12.2012
comment
Дэн, спасибо, посмотрю повнимательнее. Я думаю, что пытался использовать их в прошлом, может быть, что-то вроде наследования переменных не работает по символическим ссылкам? Я создам простой демонстрационный проект. - person Andi; 19.12.2012
comment
Наследование переменных — одна из причин использования символических ссылок. Вам нужно правильно его структурировать. Я отредактирую свой ответ для примера. - person Dan Woodward; 19.12.2012
comment
Я понял! Большое дело! Я всегда думал, что символические ссылки означают ссылки на страницы на вики-страницах. Теперь я нашел раздел символических ссылок на странице porperty. Теперь все именно так, как я хочу!! Большое спасибо, Дэн. - person Andi; 20.12.2012