0 votes

Comment accepter un certificat SSL en utilisant Selenium sur un Android émulé ?

J'utilise selenium (avec python) pour tester un site web sur un appareil Android émulé (Android version 6 et Android version 5.1) sur Sauce Labs.

Selenium tente d'accéder à un site web en utilisant le navigateur natif. Malheureusement, le certificat SSL s'affiche lorsque j'essaie d'accéder au site web, ce qui interrompt le test. Je veux que Selenium clique automatiquement sur Accepter. La boîte qui s'affiche ressemble à ceci :

Android security warning

La simple création d'un certificat pour le site n'est pas une option. Je veux que Selenium clique automatiquement sur le bouton d'acceptation. C'est possible pour Chrome, Firefox, Safari, IE, et Safari mobile (i.e. iOS), donc cela doit aussi être possible pour Android. N'hésitez pas à me faire part de vos idées ! Merci :)

0voto

A.B Points 7722

J'ai découvert qu'il est en effet possible de faire en sorte que selenium accepte automatiquement le certificat SSL pour le navigateur natif d'Android.

Le code se présente normalement comme suit :

from selenium import webdriver

caps = {'browserName': 'Android Browser'}
caps['platform'] = 'Linux'
caps['version'] = '6'
caps['deviceName'] = 'Android Emulator'
caps['deviceOrientation'] = 'portrait'
sauce_settings = 'http://{0}:{1}@ondemand.saucelabs.com:80/wd/hub'.format(
    SAUCE_USER, SAUCE_KEY,
)
driver = webdriver.Remote(
    command_executor=sauce_settings,
    desired_capabilities=caps,
)

L'option manquante, qui doit être ajoutée pour accepter automatiquement le certificat SSL, est la suivante :

caps['acceptSslCerts'] = True

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X