Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Smoke test runner / dashboard



Software-Testing.Ru - портал тестировщиков  

Новые темы форума тестировщиков


Smoke test runner / dashboard
2019-11-29 09:14

Привет.

Ищу приличное решение для запуска smoke test'ов.

Текущие тесты написаны отдельными репозиториями в gitlab на cypress для vue spa для 12 различных приложений и одного nuxt universal.

Хочется регулярный прогон каждые 15-30 минут в 2-3 окружениях (production, development, current release), прогон на push, ругань в телеграмм при падении после пуша и останов регулярного запуска до фикса. Dashboard с текущим положением дел с разделением по окружению.

 

Есть что-то хотя бы близкое к этому?

 

Сейчас делаем запуск на СI гитлабе и много боли.



Тестирование текстового поля
2019-11-29 10:25

Автор: Кристин Джеквони (Kristin Jackvony)
Оригинал статьи
Перевод: Ольга Алифанова

 

text-field1.jpg

 

Текстовое поле в приложении кажется таким обычным делом, однако это одна из наиболее важных вещей, которую мы можем протестировать. Почему? Потому что текстовые поля дают доступ к приложению и его базе данных. Валидация текстового поля – это то, что предотвращает появление в базе плохих данных. Эти данные могут вызвать разнообразные проблемы для пользователей и разработчиков. Валидация также предотвращает атаки межсайтового скриптинга и SQL-инъекции.

 

Читать статью полностью...



Sikulix отказывается искать по русским словам
2019-11-29 17:54

Здравствуйте, в sikulixapi для java напрочь отказывается  c помощью метода Region.findText()  находить русский текст.

С латиницей всё хорошо (ну не всё конечно, но намного лучше ) , кодировка Utf-8. Подскажите что можно подкрутить.

Заморочился с Graphics2D  -  Текст -> картинка  -> Region.find(pattern) - работает не стабильно.

Резать картинки, вроде как проще получается, но хотелось бы работать с текстом.



Как получить исходный код страницы используя seleniumIDE?
2019-12-01 14:37

Здравствуте! Как получить исходный код страницы используя seleniumIDE?



Вызов FirefoxDriver из вэб-приложения
2019-12-01 17:14

Добрй день

 

Я использую Selenium WebDriver не для целей тестирования, а как часть бизнес логики в вэб-приложении — когда приходит запрос на сервер (GET /run-selenium), то по его параметрам формируется некий адрес, который открывается с помощью FirefoxDriver'a. 

 

Вот часть кода, которая грубо говоря передает то, что происходит с вэбрайвером

 

val firefoxBinary = new FirefoxBinary()
firefoxBinary.addCommandLineOptions("--headless")

val firefoxOptions = new FirefoxOptions()
firefoxOptions.setBinary(firefoxBinary)

val webDriver = new FirefoxDriver(firefoxOptions)
webDriver.get(s"https://google.com")
webDriver.manage().timeouts().pageLoadTimeout(5, TimeUnit.SECONDS)
logger.info(s"Title: ${webDriver.getTitle}")
webDriver.close()

 

Локально все отрабатывает, как надо. Но когда я запаковываю приложение в докер, то я получаю такую ошибку:

 

Error servicing request: GET /run-selenium from 172.17.0.1 {{ org.openqa.selenium.WebDriverException: java.net.ConnectException: Failed to connect to localhost/127.0.0.1:9340

Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:17:03'

System info: host: '4fb27eff9adc', ip: '172.17.0.2', os.name: 'Linux', os.arch: 'amd64', os.version: '4.9.184-linuxkit', java.version: '1.8.0_212'

Driver info: driver.version: FirefoxDriver }}

org.openqa.selenium.WebDriverException: java.net.ConnectException: Failed to connect to localhost/127.0.0.1:9340

Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:17:03'

System info: host: '4fb27eff9adc', ip: '172.17.0.2', os.name: 'Linux', os.arch: 'amd64', os.version: '4.9.184-linuxkit', java.version: '1.8.0_212'

Driver info: driver.version: FirefoxDriver

at org.openqa.selenium.remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java:92)

at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:552)

at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:213)

at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:131)

at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:147)

at com.vidiq.seleniumkill.http.PublicRouter$$anonfun$httpService$1.applyOrElse(Router.scala:25)

at com.vidiq.seleniumkill.http.PublicRouter$$anonfun$httpService$1.applyOrElse(Router.scala:17)

at scala.PartialFunction$Lifted.apply(PartialFunction.scala:228)

at scala.PartialFunction$Lifted.apply(PartialFunction.scala:224)

at org.http4s.HttpRoutes$.$anonfun$of$2(HttpRoutes.scala:64)

at zio.RIO$.$anonfun$effectSuspend$1(RIO.scala:207)

at zio.internal.FiberContext.liftedTree1$1(FiberContext.scala:486)

at zio.internal.FiberContext.evaluateNow(FiberContext.scala:486)

at zio.internal.FiberContext.$anonfun$fork$1(FiberContext.scala:596)

at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)

at java.lang.Thread.run(Thread.java:748)

В качестве базового докер имэдажа я использую:

 

FROM openjdk:8-jre-alpine3.9
ARG firefox_ver=70.0
ARG geckodriver_ver=0.26.0

# Download and install deps
RUN apk update && apk add curl curl-dev

RUN mkdir /opt/docker && chmod a=rwX /opt/docker

# Download and install Firefox
RUN curl -fL -o /tmp/firefox.tar.bz2 https://ftp.mozilla.org/pub/firefox/releases/${firefox_ver}/linux-x86_64/en-GB/firefox-${firefox_ver}.tar.bz2 \
&& tar -xjf /tmp/firefox.tar.bz2 -C /tmp/ && mv /tmp/firefox /opt/docker

# Download and install geckodriver
RUN curl -fL -o /tmp/geckodriver.tar.gz \
https://github.com/mozilla/geckodriver/releases/download/v${geckodriver_ver}/geckodriver-v${geckodriver_ver}-linux64.tar.gz \
&& tar -xzf /tmp/geckodriver.tar.gz -C /tmp/ && chmod +x /tmp/geckodriver && mv /tmp/geckodriver /opt/docker

ENV PATH="/opt/docker/firefox:${PATH}"

 

Кто может подсказать в где может быть причина подобного поведения селениума?

 

Я уже убедился, что linux user, из-под которого бежит докер имеет все права на выполнение фаерфокса и гекодрайвера, читал про совместимость версий селениума, вебрайвера и гекодрайвера и т д



Postman: в Runner как задать сохранение переменной в Environment
2019-12-01 23:11

Здравствуйте. 

 

Подскажите кто уже разобрался с таким вопросом.

 

Грубо описывая, имею:

 

1. В запросе заведено сохранение переменной из тела ответа в Environment. 

 pm.environment.set("id_izm", pm.response.json().id);

 

 

 

2. Следующий запрос это значение берет из окружения, вставляет в тело запроса {{id}} обрабатывает и получает свой ответ.

 

Когда запрос 1 и 2 запускается руками, в окружение вписывается каждый раз новое значение id_izm  - здесь вопросов нет

 

НО когда запускаешь RUNNER  и там идет последовательный запуск 1 и 2 запроса, в переменную id_izm окружения в Environment не записываются новые значения id, получаемые от первого запроса. В Environment  жестко остается последнее значение в поле  id_izm  от ручного запуска.

 

 

Подскажите, плиз, где найти информацию как запустить  в RUNNER запись/перезапись переменных в окружение Environment , либо подскажите здесь : как это сделать

 

// пробовал и более сложный вариант скрипта, ничего не меняется

 

try {
      pm.environment.set("id", pm.response.json().id);
}
catch(e) {
      console.log(e);
}


© 2010 | Software-Testing.Ru


В избранное