Как запустить записанный (HTML) тест на селен из .NET - PullRequest
2 голосов
/ 13 января 2009

Я запускаю тесты Selenium с Selenium RC из .NET (c #).

В некоторых случаях я хотел бы сохранить исходный код теста в виде HTML (чтобы иметь возможность изменять его из Selenium IDE), но я хотел бы запустить / включить эти тесты из моих модульных тестов c #.

Может быть, это очевидно, но я не могу найти метод API в Selenium Core для достижения этой цели. Есть идеи, как это сделать?

(я думаю, что команда includePartial в Selenium on Rails делает то, что мне нужно, но для c #.)

Ответы [ 4 ]

3 голосов
/ 04 октября 2010

Я задал этот вопрос некоторое время назад, и с тех пор я продвинулся вперед в автоматизированном функциональном тестировании, больше к направлению BDD / ATDD / Specification by Example с SpecFlow .

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

Я создал небольшой синтаксический анализатор и интерпретатор для html-файлов Selenium (скачать его можно здесь: http://bit.ly/ciTMA2). Помимо реализации, эти классы добавляют некоторые методы расширения в интерфейс ICommandProcessor Selenium. Основываясь на этом , тест может выглядеть так:

Список команд = SeParser.ParseSeFile (@ "HomePageTest.html"); selenium.Processor.InterpretCommands (команды); selenium.Processor.AssertNoVerifyErrors ();

(InterpretCommands и AssertNoVerifyErrors являются пользовательскими методами расширения.)

0 голосов
/ 12 июля 2009

Вы можете установить формат при работе в Selenium IDE, выбрав «Настройки» -> «Формат», а затем установите его на выбранном вами языке. Это означает, что вы можете создавать тесты c # без необходимости конвертировать их в процессе работы. Вы все еще можете щелкнуть правой кнопкой мыши и выбрать команду, и она будет обновлена ​​до c # в IDE.

Я думаю, это то, что вам нужно.

0 голосов
/ 29 марта 2010

Возможно, вы могли бы разобрать xhtml теста и использовать .NET отражение, чтобы преобразовать его в вызовы методов, но это потребует некоторых усилий с вашей стороны

0 голосов
/ 13 января 2009

Я не думаю, что был способ сделать это в последний раз, когда я использовал Selenium RC .NET

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