Как создать вложенные тестовые пакеты для Selenium IDE?

Мне нужно создать вложенный тестовый пакет в Selenium, который будет работать в Selenium IDE или Selenium TestRunner. Это в основном структура, которую я пытаюсь достичь:

MasterTestSuite.html
 - ComponentTestSuite.html
    - TestCase1.html
    - TestCase2.html
 - OtherComponentTestSuite.html
    - TestCase3.html
    - TestCase4.html

Мне НУЖНО быть в состоянии добиться чего-то эквивалентного этому. Я начал использовать расширение Include, которое позволяет включать содержимое другого тестового примера, но у меня возникают проблемы с ним. Как вы это достигли? Какой совет вы можете дать, как помочь мне достичь этого?

Ответ 1

Это может быть не явный ответ, но я играл с Selenium IDE в течение 3 месяцев. Затем я узнал, что WebDriver намного мощнее. Ваша ситуация - кусок пирога с Selenium WebDriver. Чем сложнее логика, тем лучше вы используете исходный код вместо интерфейса GUI для определения ваших рабочих процессов. Параметры ввода и вывода могут быть очень запутанными, если они не документированы должным образом. И они могут очень легко ломаться, если они модернизируют Selenium IDE. Selenium IDE очень хорошо показывает начинающего программиста, как автоматизировать рабочий процесс с помощью рекордера, но если вы программист, он вернет вас.

Однако, если вы действительно хотите выполнить свою ситуацию, вы можете разработать свою собственную функцию JavaScript, которая вызывает другие функции (или другие тестовые примеры).

Ответ 2

Насколько я знаю, Selenium IDE не поддерживает это. Как большинство людей делают это, так это создание отдельных наборов тестов и их запуск по отдельности.

Я делаю это в С#/NUnit, создавая файл *.cs для каждой основной области, а затем задавая категории для каждого из тестов, чтобы получить дополнительную детализацию

например.

namespace Test.The.World
{
   [TestFixture]
   public class UK 
   {
      [Test]
      [Category("Southern Counties")]
      public void Sussex_Brighton(){
          .....
      }
      [Test]
      [Category("Southern Counties")]
      public void Hampshire_Southampton(){
          .....
      }
   }
}

И затем используйте функциональность NUnit для выполнения тестов соответственно.

Я уверен, что большинство фреймворков для большинства языков имеют такую ​​функцию

Ответ 3

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

Есть некоторые роботы с открытым исходным кодом/свободным программным обеспечением, такие как http://www.xqual.com/ XStudio. Я пробовал это немного и делаю работу, но довольно беспорядочно работать, но хорошо, если ваша тестовая среда не меняется часто. Здесь вы можете автоматически запускать автоматические кавычки и т.д. И отчитываться о результатах.

Cheers, Стефан

Ответ 4

У меня есть несколько десятков тестовых наборов, встроенных в Selenium IDE, чтобы помочь в тестировании моего плагина Store Locator Plus WordPress. Иногда мне нужно запустить одиночный набор тестов Selenium. Однако, когда я выпускаю новую версию базового плагина, я хочу запустить десяток тестовых наборов один за другим.

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

Возможно, будет возможно исследовать и модифицировать плагин JavaScript для создания нескольких разных списков избранного, которые могут удовлетворить ваши потребности. Тем временем вы можете получить хотя бы один "главный список наборов", объединив надстройки Selenium IDE:

После установки каждого из этих надстроек (технически плагинов Mozilla Firefox) вы увидите кнопку избранного внутри интерфейса Selenium IDE. Отметьте свои любимые апартаменты, и у вас будет свой "список". Теперь вы можете выбрать "Избранное/Запустить все" из меню Selenium IDE.

Вы можете быть осторожны в последовательности, в которой вы помечаете своих фаворитов. Я отметил их в том порядке, в котором я хотел, чтобы они бежали. Откройте тестовый набор # 1, любимый, тестовый набор # 2 любимый и т.д., Затем "запустите все". Отлично работает и показывает мне общее количество прогонов и количество неудач во всех наборах (и, следовательно, тестов), которые были выполнены. Журнал, к сожалению, выглядит как reset в каждом пакете.

Ответ 5

Вам нужно SeleniumRC и некоторый инструмент языка программирования для написания и запуска тестов. SeleniumIDE позволяет сохранять тест на нескольких языках (С#, JAVA, PHP, Python и т.д.) Используйте тот, с которым вы знакомы. Кроме того, без SetUp и TearDown трудно выполнить хорошие тесты. Selenium IDE не позволяет использовать эти методы.

Ответ 6

Это должно быть в mainsuite.

    public static Test suite() {
    TestSuite testSuite = new TestSuite();
    testSuite.addTest(ComponentTestSuite1.suite());
    testSuite.addTest(OtherComponentTestSuite2.suite());
    }