Size: a a a

testing_in_python

2021 July 20

СС

Сказочный Сникерс... in testing_in_python
ну учитывая что у тебя как ни крути драйвер это скорее всего фикстура - то в твоем случае просто написать еще одну параметризованную, и подставить нужным тестам вместо обычной
источник

S

Someone in testing_in_python
Make sense 🐱
источник

S

Someone in testing_in_python
Пасиб
источник

'

'sup in testing_in_python
Имеется 3 ДБ. Имеется множество сред тестирования. На каждую среду свои конфигурации для подключения. Имеется 2 типа пользователя с разными доступами и конфигами. На каждую среду, ДБ имеется свой ключ доступа\токен для типа пользователя. Вопрос, как это все грамотно организовать? Делаю фреймворк для тестеров, с Питоном знаком, но не сильно. Если кто-то может подсказать как при запуске тестов автоматически определять среду, тип юзера и от этого уже танцевать в сторону получения токенов, получить только нужный токен (чтобы не пингать все доступы как это сделано сейчас), был бы очень благодарен. На данный момент среда считывается с пользовательского ввода и по ключам дергаются ВСЕ варианты получения токена в словаре. Спасибо
источник

EB

Evgenii B in testing_in_python
- как при запуске тестов автоматически определять среду?

Создать env var со средой, вычитывать ее значение, находить сочетание для этой среды из словаря. Этот код можно поместить в фикстуру session уровня.

формально у тебя в фикстуре будет что-то вроде:
env = config[os.getenv('TEST_ENV')]
env['mysql']

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

А

Андрей in testing_in_python
Семпаи, подскажите, пожалуйста, заметил что при тестировании API часто одинаковые ассерты. Какая хорошая практика с ними? оставлять как есть, или может сделать функцию, которая в себе будет содержать ассерты (если так можно). Пример ассертов моих -
        assert JsonSchemeValidator(instance=result.json(), scheme='delete_card_200').is_valid(), \
           f"{JsonSchemeValidator(instance=result.json(), scheme='delete_card_200').get_list_errors()}"
       assert result.status_code == 200, f'Response status not 200 - {result.status_code}'
       assert result.elapsed.seconds <= 5, f'Response time more than 5 sec - {result.elapsed.seconds}'
источник

СС

Сказочный Сникерс... in testing_in_python
пиши функцию конечно
источник

СС

Сказочный Сникерс... in testing_in_python
но вообще первые 3 имхо можно делать прямо в апи клиенте перед возвращением ответа в тест
источник

А

Андрей in testing_in_python
Пасиба
источник

В

Виталий in testing_in_python
Привет. Подскажите пожалуйста.

Я запускаю ./cm selenoid start --vnc

Мне нужно в скобках передавать аргумент limit или просто?

Типо ./cm selenoid start --vnc -args "-limit 7"
источник
2021 July 21

A

Alexander in testing_in_python
Чисто из любопытства, а вообще без софт ассертов норм несколько проверок в один тест пихать? Он же рухнет на первой проверке
источник

А

Андрей in testing_in_python
К сожалению, я не понимаю значение слова софт ассерты
источник

AR

Alex Radchenko in testing_in_python
Не норм конечно. Но иногда логично допустим сначала тесторовать код ответа а потом схему, если ответ не 200 то и схему смысла провенять нет.
источник

A

Alexander in testing_in_python
Это например pytest_check ты можешь сделать несколько ассертов и они, даже если зафейлятся не вызовут падение теста, а позволят пройти следующие проверки, а потом скопом выведут результат. Из минусов плохо дружат с аллюром (те что я юзал).
источник

А

Алексей in testing_in_python
как и всегда - зависит от логики. Если первый ассерт проверяет наличие респонса, а следующий - его контент, то вполне норм - без респонса контента нет. Если же идет проверка тела респонса по полям - там имеет смысл проверить все поля и выдать коммулятивную ошибку по всем полям
источник

A

Alexander in testing_in_python
ну, если исключить варианты вроде "разраб налажал с кодом ответа" (иногда приходилось таки проверять корреткность кода, а не просто 200), то да, годно.
источник

Ф

Филипп in testing_in_python
Всем привет. Возможно ли как-то проверить, что видео начало проигрываться в стоковом плеере?
источник

Ф

Филипп in testing_in_python
В стоковом HTML плеере. Тесты на селениуме.
источник

EB

Evgenii B in testing_in_python
если плеер по мере работы как-то current time ролика сохраняет в html атрибут и оно отлично он 0, искать этот элемент
источник

EB

Evgenii B in testing_in_python
еще: подготовить видео ролик, типа отсчета времени, прикрутить скришотилку, ocr для распознания 1-2-3-4, етс, чекать что таймер растет =)
источник