Size: a a a

QA — Автоматизация

2020 September 30

LY

Lev Yarushin in QA — Автоматизация
Evgeni Vetrov
Всем привет. Selenium. В моих тестах, в которых авторизация не нужна непосредственно в сценарии, я обхожу её с помощью возможности селениума встраивать cookie, но есть проблема связанная с временем жизни куки в 6 часов, т.е. через каждый период времени, мне нужно в коде менять её значение.
1) Можно ли как-то добиться, чтобы кука была актуальна более длительное время?
2) Насколько правилен в целом такой подход.. Возможно стоит авторизовываться через UI в любом сценарии, или перед каждым тестом/группой тестов, проверять авторизован ли пользователь и если нет, то авторизовываться?
Авторизуйтесь перед сьютом. Причём UI для этого не нужен - возьмите метод на который передаются данные, и дергайте его http-клиентом. Затем сохраняйте куки
источник

O

Oleg in QA — Автоматизация
вообще тесты на тесты писать часто хорошая идея
источник

ДВ

Диана Верикова (Кудр... in QA — Автоматизация
У некоторых разрабов мозг как-то по-другому работает. Недавний пример: есть две булевые переменные, есть ветвление в стиле "если а, то (если б подпрыгни, иначе похлопай)"
Разраб видит, что надо проверить ветку подпрыгни, ветку похлопай и ветку "не а". Разраб прав с точки зрения покрытия веток, но не прав с точки зрения покрытия значений переменных, мы полчаса сражались, чтобы было 4 теста вместо трех, так как бизнес логика поведения этих переменных сильно нестабильна)
Вопрос скорее был даже не в том, что там обязательно должно было быть 4 теста, а в том, что разраб вообще сооовсем не понимал, как их может быть 4, тут же все очевидно!
источник

EV

Evgeni Vetrov in QA — Автоматизация
Lev Yarushin
Авторизуйтесь перед сьютом. Причём UI для этого не нужен - возьмите метод на который передаются данные, и дергайте его http-клиентом. Затем сохраняйте куки
Я в этом почти ничего не понимаю. Не могли бы вы порекомендовать что почитать на эту тему, или о чём спросить гугл?
источник

LY

Lev Yarushin in QA — Автоматизация
Evgeni Vetrov
Я в этом почти ничего не понимаю. Не могли бы вы порекомендовать что почитать на эту тему, или о чём спросить гугл?
Ищите http client library под ваш ЯП. Спрашиваете у разработчиков/смотрите в devtools какой метод отвечает у вас за авторизацию. Повторяете его в тестах.
источник

VM

Vova Moskalenko in QA — Автоматизация
Диана Верикова (Кудрявцева)
У некоторых разрабов мозг как-то по-другому работает. Недавний пример: есть две булевые переменные, есть ветвление в стиле "если а, то (если б подпрыгни, иначе похлопай)"
Разраб видит, что надо проверить ветку подпрыгни, ветку похлопай и ветку "не а". Разраб прав с точки зрения покрытия веток, но не прав с точки зрения покрытия значений переменных, мы полчаса сражались, чтобы было 4 теста вместо трех, так как бизнес логика поведения этих переменных сильно нестабильна)
Вопрос скорее был даже не в том, что там обязательно должно было быть 4 теста, а в том, что разраб вообще сооовсем не понимал, как их может быть 4, тут же все очевидно!
а какой должен быть четвертый, по вашему мнению?
источник

S

Sergei in QA — Автоматизация
👍
источник

i

iBljad in QA — Автоматизация
Vova Moskalenko
а какой должен быть четвертый, по вашему мнению?
"не А"
источник

S

Sergei in QA — Автоматизация
что "не А"? Не А - это либо Б либо ни А ни Б :)
источник

LY

Lev Yarushin in QA — Автоматизация
не булевы значения на входе
источник

VM

Vova Moskalenko in QA — Автоматизация
iBljad
"не А"
если я правильно понял условие, там ифы вложены
источник

S

Sergei in QA — Автоматизация
тоже понял как
if a:
   print(a)
else:
   if b:
       print(b)
   else:
       print(not a not b)
источник

i

iBljad in QA — Автоматизация
сорян, я сам запутался в "псевдокоде")))
источник

EV

Evgeni Vetrov in QA — Автоматизация
Lev Yarushin
Ищите http client library под ваш ЯП. Спрашиваете у разработчиков/смотрите в devtools какой метод отвечает у вас за авторизацию. Повторяете его в тестах.
спасибо
источник

ДВ

Диана Верикова (Кудр... in QA — Автоматизация
Я изначально про
А б
А не б
Не а б
Не а не б
Небулевы тоже регулярно забывают х)
источник

S

Sergei in QA — Автоматизация
ээ вы не могли бы хотя бы псевдокод написать) а то не сильно ясно, какая логика)
источник

i

iBljad in QA — Автоматизация
Vova Moskalenko
если я правильно понял условие, там ифы вложены
кажется, четвертым вариантом было "не А" + "не Б"
источник

VM

Vova Moskalenko in QA — Автоматизация
в случае вложенных ифов, это то же самое, что вариант не А
источник

ДВ

Диана Верикова (Кудр... in QA — Автоматизация
Sergei
тоже понял как
if a:
   print(a)
else:
   if b:
       print(b)
   else:
       print(not a not b)
Не, баз первого else)
источник

S

Sergei in QA — Автоматизация
if a:
   print(a)
if b:
   print(b)
else:
   print(not a not b)
источник