selenium — «Войти на веб-сайт учетной записи Google через браузер с помощью приложения .Net»
Я хотел бы автоматически входить в учетную запись Google с помощью инструментов, аналогичных Selenium (похоже, Google блокирует любой инструмент автоматизации). Наше текущее приложение основано на .Net и использует селен, но, поскольку Google блокирует доступ к селену, мы рассмотрим любые другие альтернативы (даже если они не основаны на .Net), если мы можем запустить этот рабочий процесс из вызова приложения (Exe).
Я думал о том, чтобы получить какой-то токен с помощью REST API, а затем использовать токен в URL-адресе (например: google.com/?logmeinPlease=[TOKEN]).
Поискал в Интернете, но не нашел решения своей проблемы. Будем рады вашей помощи. Спасибо, Юлия.
По нескольким причинам вход на такие сайты, как Gmail и Facebook, с помощью WebDriver не рекомендуется. Помимо того, что это противоречит условиям использования этих сайтов (где вы рискуете закрыть учетную запись), это медленно и ненадежно.
Идеальной практикой является использование API-интерфейсов, предлагаемых поставщиками электронной почты, или, в случае Facebook, службы инструментов разработчика, которая предоставляет API для создания тестовых учетных записей, друзей и т. д. Хотя использование API может показаться слишком тяжелой работой, вы окупитесь скоростью, надежностью и стабильностью. API также вряд ли изменится, в то время как веб-страницы и локаторы HTML меняются часто и требуют обновления вашей тестовой среды.
Вход на сторонние сайты с помощью WebDriver в любой момент вашего теста увеличивает риск сбоя теста, потому что это делает его более продолжительным. Общее эмпирическое правило заключается в том, что более длинные тесты более хрупкие и ненадежные.
Реализации WebDriver, совместимые с W3C, также аннотируют объект навигатора свойством WebDriver, чтобы можно было смягчить атаки типа «отказ в обслуживании».
Пожалуйста, посетите веб-сайт seleniumHQ для получения более подробной информации.
1
Зарегистрируйтесь или войдите в систему
Зарегистрируйтесь с помощью Google
Зарегистрироваться через Facebook
Зарегистрируйтесь, используя электронную почту и пароль
Опубликовать как гость
Электронная почта
Требуется, но никогда не отображается
Опубликовать как гость
Электронная почта
Firebase Вход в Facebook через мобильный браузер перенаправляет/закрывается после 3-кратного нажатия кнопки «Назад» в Android
Я реализовал вход в Facebook через firebase. При нажатии на кнопку входа facebook открывает мобильный браузер в пользовательских вкладках. Когда я нажимаю кнопку «Назад» или «Закрыть», перенаправление происходит только после 3 раз. Страница входа в Facebook перезагружается 3 раза, и только после этого страница закрывается.
Пожалуйста, найдите код ниже,
import android.app.Activity импортировать android.content.Intent импортировать android.os.Bundle импортировать android.util.Log импортировать com.example.ondemand.R импортировать com.facebook.CallbackManager импортировать com.facebook.FacebookCallback импортировать com.facebook.FacebookException импортировать com.facebook.login.LoginManager импортировать com.facebook.login.LoginResult импортировать com.facebook.login.widget.LoginButton класс FirebaseFaceBookSignInActivity: Activity() { частная переменная mCallbackManager: CallbackManager? = ноль частный val TAG = "FacebookLogin" частная переменная fbLoginButton: LoginButton? = ноль переопределить удовольствие onCreate(savedInstanceState: Bundle?) { super.onCreate(сохраненныйInstanceState) setContentView (R.layout.activity_login) fbLoginButton = findViewById
(R.id.linearFBSignIn) mCallbackManager = CallbackManager.Factory.create() ЛогинМенеджер.getInstance() .registerCallback(mCallbackManager, объект: FacebookCallback { переопределить удовольствие при успехе (loginResult: LoginResult) { Log.d(TAG, "facebook:onSuccess:$loginResult") } переопределить удовольствие onCancel() { Log.d(TAG, "facebook:onCancel") } переопределить удовольствие onError (ошибка: FacebookException) { Log.d(TAG, "facebook:onError", ошибка) } }) fbLoginButton?.setOnClickListener { FB Логин() } } переопределить удовольствие onActivityResult (код запроса: Int, код результата: Int, данные: намерение?) { super.