Есть отличная удаленная работа для php+codeception+jenkins+allure+docker спецов. 100% remote! Присоединиться к проекту

Можно ли в тестовой среде использовать индивидуальный пароль/логин на каждой виртуальной машине для авторизации


(anton_matyushkin) #1

Ситуация следующая:

В тестируемое приложение добавили проверку на единичную авторизацию в системе, т.е. если запущен один браузер и пользователь авторизовался в системе, то при попытки запустить второй браузер и авторизоваться в нем - нельзя.

В связи с этой проверкой попали в тупик:

если запущены тесты, то я уже не могу писать/отлаживать тесты у себя на машине, а в виртуальной среде половина тестов падает, т.к. у нас среда состоит из 2-х виртуалок (по ходу добавления тестов планируется увеличение до 5-6), а для авторизации до этого использовалась только одна учетная запись. Причем тесты распределяются по виртуалкам контроллером тестирования (с моей точки видения - можно сказать - рандомно, т.е. я не могу с уверенностью сказать, что "тест 1" попадет на "виртуалку 1", а "тест 2" - на "виртуалку 2").

Встает вопрос:

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

 


(Romanchuk Katerina) #2

Антон, а у вас где хранится IP server-а на котором вы хотите запустить тесты?

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

Например, у меня есть три виртуалки:

1.1.1.500

1.1.1.501

1.1.1.502

На каждой лежит конфиг в котором прописан нужный адрес.

Данные для авторизации нужно обязательно тоже в конфиг вынести, без этого никак.

Это позволяет авторизироваться независимо от того под какой учетной записью запустились тесты. Вы сможете в конфиге опционально менять логин и пароль для авторизации.


(anton_matyushkin) #3

Katya, можешь показать свой конфиг? И как ты автотестом выбираешь данные из конфига?


(Romanchuk Katerina) #4

anton_matyushkin, у меня конфиг обычный дикшенари

например:

my_config = {

"server": "127.0.0.1",

"auth" : {
          "login": "test_name",
          "psw": "test_psw"
          }
}

обращаюсь к этим значениям просто как к элеметам словаря

print my_config['server']
print my_config['auth']['login']

вернет:

127.0.0.1
test_name

 

 

 

(Romanchuk Katerina) #5

Да забыла главное сказать, пишу то я не на С#
только сейчас обратила внимание на тему (MS Visual Studio, СodedUI и т.д.)
Я пишу на Пайтоне.