Как я могу запустить тесты на селен на browserstack.com?

Скажем, я хочу провести на своем веб-сайте следующий тест:

  • Загрузите его в браузер.
  • Нажмите на кнопку, которая выполняет некоторый Javascript.
  • Дождитесь завершения действия Javascript.
  • Посмотрите, как теперь выглядит страница.

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

Как я могу объединить тест Selenium (может быть на JS, C # или что-то еще) с BrowserStack, чтобы BrowserStack выполнил тест во всех браузерах, которые мне нужны, а затем отправил мне какой-то отчет, например, кучу скриншотов?

BrowserStack предоставляет небольшую документацию по TestSwarm и Selenium по адресу http://www.browserstack.com/automated-browser-testing-api, но поскольку я новичок в теме веб-тестирования, я не понимаю, как взаимодействуют друг с другом BrowserStack, Selenium и, возможно, TestSwarm.

РЕДАКТИРОВАТЬ: Selenium и Testswarm - это просто примеры, я не предпочитаю никаких фреймворков, мне просто нужно автоматизировать BrowserStack.


person cheesus    schedule 19.03.2013    source источник


Ответы (3)


Я не думаю, что это возможно сейчас ...

В их документе о тестировании localhost приведен пример работы их командной строки:

Интерфейс командной строки

java -jar BrowserStackTunnel.jar TI3PnSeogaDEcwSyiSzm localhost, 3000,0

По моему опыту работы с селеном, это не оставляет возможности запустить тест на селен.

Вот пример того, как я называю тест на селен:

java -Dpfile="../properties/ff-test.properties" -jar ../runselenium.jar ca.myorg.tests.HappyPathTest 

Я только что получил от них электронное письмо, в котором обещали полную поддержку селена где-то в следующем месяце (май 2013 г.):

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

Надеюсь это поможет.

person dfdumaresq    schedule 15.04.2013
comment
Сейчас июнь; они действительно уведомили вас лично о добавлении поддержки Selenium? В любом случае, знаете ли вы, как обстоят дела в настоящее время? (Лично для меня это уже не важно, но было бы неплохо обновлять этот ответ.) - person Mark Amery; 23.06.2013
comment
(Сейчас август, и я только что заметил, что вы мне позвонили, извините). Да, BrowserStack действительно появился в середине июля с browserstack.com/automate. Я очень доволен этим. Пример кода, который работает впервые. Визуальные обновления приборной панели в реальном времени. Круглосуточная поддержка по электронной почте. - person dfdumaresq; 06.08.2013

BrowserStack.com теперь поддерживает сквозное тестирование селена под именем Автоматизировать. Существует документация, которая поможет вам начать работу с образцами кода для нескольких языков программирования. Как и в других продуктах, туннель и некоторые другие функции уже интегрированы.

Полное раскрытие информации: я работаю на BrowserStack.com.

person Aditya Patawari    schedule 23.08.2013
comment
Немного оффтоп, но: Browserstack - действительно классная программа! - person JochemQuery; 21.01.2014
comment
Я получаю сообщение об ошибке аутентификации, когда URL-адрес концентратора стека браузера hub.browserstack.com/wd/hub пройдено. Любые предложения, как решить эту проблему .. - person kk1076; 25.11.2014
comment
К сожалению, я борюсь с веб-драйвером за прокси, который требует имени пользователя и пароля. - person Dallas Clark; 18.03.2015

В настоящее время запускать автоматические задачи на Selenium действительно просто. Browserstack создал действительно красивую документацию (которая охватывает разные языки). Например, вот как это нужно сделать для C #. Итак, все, что вам нужно, это немного изменить ваши тесты на селен, получить свой API-ключ (если вы подпишетесь на эту услугу, он уже будет на странице) и выберите ОС / Браузер / Устройство, на котором вы хотите, чтобы ваши тесты были выполнены. .

using System;
using OpenQA.Selenium;
using OpenQA.Selenium.Remote;

namespace SeleniumTest {
  class Program {
    static void Main(string[] args) {
      IWebDriver driver;
      DesiredCapabilities capability = DesiredCapabilities.Firefox();
      capability.SetCapability("browserstack.user", "USER_ID");
      capability.SetCapability("browserstack.key", "API_KEY");

      driver = new RemoteWebDriver(
        new Uri("http://hub.browserstack.com/wd/hub/"), capability
      );
      driver.Navigate().GoToUrl("http://www.google.com/ncr");
      Console.WriteLine(driver.Title);

      IWebElement query = driver.FindElement(By.Name("q"));
      query.SendKeys("Salvador Dali");
      query.Submit();
      Console.WriteLine(driver.Title);

      driver.Quit();
    }
  }
}

Как видите, все почти так же, как у вашего селенового теста. Вы также можете создавать скриншоты из селена, а также их API скриншотов

person Salvador Dali    schedule 10.04.2014