Безопасный, автоматизированный, логин для селена с python - PullRequest
0 голосов
/ 31 января 2019

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

@given('I wait for input of correct credentials')
    def step_impl(context):
        WebDriverWait(context.driver, 20).until( 
             expected_conditions.visibility_of_elements_located(
                BasePageLocators.SIDEBAR)
        )

Есть ли лучший способ без отправки информации в моем коде?Предпочтительно тот, который не требует ручного ввода

Ответы [ 2 ]

0 голосов
/ 31 января 2019

Хотя эта статья была написана специально для того, чтобы решить, как обрабатывать кредиты, связанные с SauceLabs, нет причины, по которой вы не можете использовать тот же метод.

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

0 голосов
/ 31 января 2019

Вы можете вызвать метод send_keys() непосредственно после того, как WebDriverWait вернет элемент следующим образом:

WebDriverWait(context.driver, 20).until( 
    expected_conditions.visibility_of_elements_located(
        BasePageLocators.SIDEBAR).send_keys("Allan Blackmar")
...