Size: a a a

2020 July 23

ON

Olzhas Nuralinov in atinfo chat
можете посоветовать материал по параллелизации junit тестов?
я тут пробую surefire плагин, но он работает не так, как я ожидаю.
задаю конфигурацию:
<threadCountMethods>4</threadCountMethods>
<parallel>methods</parallel>
<perCoreThreadCount>false</perCoreThreadCount>

в
итоге вижу, что потоков 4, но все тесты последовательно отрабатывают.
источник

ON

Olzhas Nuralinov in atinfo chat
Olzhas Nuralinov
можете посоветовать материал по параллелизации junit тестов?
я тут пробую surefire плагин, но он работает не так, как я ожидаю.
задаю конфигурацию:
<threadCountMethods>4</threadCountMethods>
<parallel>methods</parallel>
<perCoreThreadCount>false</perCoreThreadCount>

в
итоге вижу, что потоков 4, но все тесты последовательно отрабатывают.
шаг в первом потоке, шаг во втором, шаг в третьем...
источник

EK

Elbrus K2 in atinfo chat
Olzhas Nuralinov
можете посоветовать материал по параллелизации junit тестов?
я тут пробую surefire плагин, но он работает не так, как я ожидаю.
задаю конфигурацию:
<threadCountMethods>4</threadCountMethods>
<parallel>methods</parallel>
<perCoreThreadCount>false</perCoreThreadCount>

в
итоге вижу, что потоков 4, но все тесты последовательно отрабатывают.
У них всё через одно место, надо посмотреть примеры на их же гитхабе, тоже мучался с этим.
источник
2020 July 27

VI

Vladislav Ignatov in atinfo chat
Здравствуйте, использую стек python+selenium webdriver+ behave. При попытке запустить тесты через behave , где присутствует импорт из корневой папки, всегда получаю ModuleNotFoundError: No module named ‘название папки, откуда начинается ветвление по фичам’. Что только не пробовал, и init добавлял с указанием sys.path.append, и файл с enviroment создать, там прописать стартовую точку, все бесполезно. Причем если запускать тесты не через Behave , импорт работает, ошибок не возникает, либо убрать импорт и запустить тесты через Behave - тоже все ок.
Структура папок след :
источник

VI

Vladislav Ignatov in atinfo chat
источник
2020 July 28

A

Amidosha (Константин... in atinfo chat
Доброе утро.
Имеется карта и снятый определённый кусочек карты, возможно ли с помощью ashot, не снимать скрин по координатам, а сравнить именно этот кусок скриншота со всей картой, или надо обязательно каждый раз при запуске теста снимать актуальный скриншот данного участка?
источник

S

Sergei in atinfo chat
Вряд ли здесь будет лёгкий путь)
источник

A

Amidosha (Константин... in atinfo chat
Sergei
Вряд ли здесь будет лёгкий путь)
Как же тогда тестировать карту, если она один сплошной канвас, делать скриншот, выбирать координаты и вперёд).
источник

V

Vita in atinfo chat
не-а...сложно сравнить кусок и другой кусок, если они в разных цветовых схемах живут с разным разрешением
источник

V

Vita in atinfo chat
придется скрин подгонять под систему карт, чтоб попиксельно сравнить их
источник

V

Vita in atinfo chat
а лучше такой тест вручную делать, если таких ошибок немного
источник

12

1 2 in atinfo chat
Подскажите
Запускаю тест с использованием Codeception PhpBrowser и в самом начале при входе на страницу вываливается попап о возрасте который не видит PhpBrowser. Локаторы все что мог перепробовал
При использовании WebDriver и селениума - все прекрасно работает
Помогите что делать
источник

R(

Roman (rpwheeler) in atinfo chat
Amidosha (Константин)
Доброе утро.
Имеется карта и снятый определённый кусочек карты, возможно ли с помощью ashot, не снимать скрин по координатам, а сравнить именно этот кусок скриншота со всей картой, или надо обязательно каждый раз при запуске теста снимать актуальный скриншот данного участка?
Насколько мне известно,  ashot не для "кусочков".  Поиском изображения в изображении или на экране занимаются OpenCV и сделанная на его базе, например, Sikuli .

Но я не настаиваю чтобы Вы заводили любую из них в проект, а вместо этого предлагаю подумать так ли уж оно нужно вообще иметь тест на этот "кусочек карты" — что Вы таким образом тестируете, так ли уж оно Вам нужно, не достаточно ли просто факта самого ответа от API карт или наличия в нём каких-то ключевых слов. Вполне возможно что в Вашем случае вид карты не так нужен или критичен, а время в прогонах отнимать будет.
источник

АК

Артем Кузьменко... in atinfo chat
Привет. Есть кто использует python + behave со сценариями на русском языке? Я вот впервые его вижу...
Что то не соображу как все это дело запустить хоть раз и фикстуру правильно написать, чтобы перед тестами стартовать браузер, а в конце закрывался
@fixture
def driver(context):
   # -- SETUP-FIXTURE PART:
   config = read_yaml(const.CONFIG)
   context.driver = config_and_run_browser(config['web'])
   yield context.driver
   # -- CLEANUP-FIXTURE PART:
   context.driver.close()


# language: ru
 @fixture.driver
 Функционал: Главная страница

   Сценарий: Открыть главную страницу
     Дано Выполнен переход на страницу 'http://yandex.ru'


Степы сгенерил PyCharm
from behave import *

use_step_matcher("re")


@step("Выполнен переход на страницу 'http://yandex.ru'")
def step_impl(context):
   """
   :type context: behave.runner.Context
   """
   context.driver.get('')
   raise NotImplementedError(u'STEP: Дано Выполнен переход на страницу 'http://yandex.ru''')


Постоянно ругается:
You can implement step definitions for undefined steps with these snippets:

@given(u'Выполнен переход на страницу "http://yandex.ru"')
def step_impl(context):
   raise NotImplementedError(u'STEP: Given Выполнен переход на страницу http://yandex.ru'')

Может кто пример покажет?
источник
2020 July 29

АК

Артем Кузьменко... in atinfo chat
Артем Кузьменко
Привет. Есть кто использует python + behave со сценариями на русском языке? Я вот впервые его вижу...
Что то не соображу как все это дело запустить хоть раз и фикстуру правильно написать, чтобы перед тестами стартовать браузер, а в конце закрывался
@fixture
def driver(context):
   # -- SETUP-FIXTURE PART:
   config = read_yaml(const.CONFIG)
   context.driver = config_and_run_browser(config['web'])
   yield context.driver
   # -- CLEANUP-FIXTURE PART:
   context.driver.close()


# language: ru
 @fixture.driver
 Функционал: Главная страница

   Сценарий: Открыть главную страницу
     Дано Выполнен переход на страницу 'http://yandex.ru'


Степы сгенерил PyCharm
from behave import *

use_step_matcher("re")


@step("Выполнен переход на страницу 'http://yandex.ru'")
def step_impl(context):
   """
   :type context: behave.runner.Context
   """
   context.driver.get('')
   raise NotImplementedError(u'STEP: Дано Выполнен переход на страницу 'http://yandex.ru''')


Постоянно ругается:
You can implement step definitions for undefined steps with these snippets:

@given(u'Выполнен переход на страницу "http://yandex.ru"')
def step_impl(context):
   raise NotImplementedError(u'STEP: Given Выполнен переход на страницу http://yandex.ru'')

Может кто пример покажет?
Сам отвечу.
environment.py
def before_feature(context, feature):
   config = read_yaml(const.CONFIG)
   context.driver = config_and_run_browser(config['web'])

def after_feature(context, feature):
   context.driver.close()

И степы  и environment.py должны лежать в
features/steps/
features/environment.py
источник

А

Андрей in atinfo chat
Всем привет, подскажите у кого есть опыт работы с репорт порталом?
Может можете поделиться опытом как создать фильтр лдя тестов внутри одного лаунча?
источник

AH

Arty Hats in atinfo chat
Всем привет, не хочет работать dragAndDrop. chrome 84.0.4147.105, selenium 3.141.59.

 public void dragAndDrop(WebElementFacade grab, WebElementFacade drop) {
   Actions builder = new Actions(getDriver());
   builder.clickAndHold(grab).clickAndHold(grab).moveToElement(drop).release(drop).build().perform();
 }

Если смотреть на тест, то не похоже, что не выполняет hold. Вижу, что селектает элемент1, затем курсор движется к элементу 2, но элемент 1 не тянет.
Может кто подскажет, в чем проблема? Заранее спасибо.
источник

AS

Andrei Solntsev in atinfo chat
Да вроде обычное дело. У всех не работает.
источник

AH

Arty Hats in atinfo chat
печаль, это и боялся услышать)
источник

V

Vita in atinfo chat
я так и не понял, как надо в селениуме нормально делать подобное. вроде бы так:
1) цепочка действий
2) потом перфом в следующей команде
источник