Je suis un nouvel utilisateur de Protractor, et j'ai rencontré cette erreur lors de l'exécution de mes tests en utilisant Chrome (ne erreur s'affiche sous la barre d'adresse dans le navigateur lancé):
Vous utilisez un indicateur de ligne de commande non pris en charge --ignore-certificate-errors. La stabilité et la sécurité en souffriront.
Voici mon conf.js pour Protractor:
exports.config = {
seleniumAddress: 'http://localhost:4444/wd/hub',
capabilities: {
'browserName': 'chrome'
},
...
De plus, j'utilise un Mac avec le dernier serveur autonome Chromedriver et Selenium disponible (2.41.0). Maintenant, je n'ai défini ce drapeau nulle part, et je ne me souviens pas qu'il s'affiche toujours, donc je ne suis pas sûr de la cause de ce problème.
Des idées sur la façon de résoudre ce problème?
Si vous utilisez Protractor, c'est probablement la configuration que vous recherchez:
capabilities : {
browserName : 'chrome',
'chromeOptions': {
args: ['--test-type']
}
},
Le drapeau --ignore-certificate-errors
a été ajouté à la liste des "mauvais indicateurs" à partir de Chrome 35, car cela réduit la sécurité du navigateur. L'indicateur fonctionne malgré tout.
Si vous souhaitez désactiver l'invite "indicateur non pris en charge", ajoutez --test-type
aux indicateurs de ligne de commande que vous utilisez. Cela ne devrait pas affecter le navigateur de toute autre manière notable, mais il est utilisé pour les tests internes, alors utilisez-le à vos propres risques.
Pour plus d'informations sur l'ajout d'indicateurs de ligne de commande, consultez la Documents sur les capacités de Chromedriver .
System.setProperty("webdriver.chrome.driver","<<your chrome path>>");
// To remove message "You are using an unsupported command-line flag: --ignore-certificate-errors.
// Stability and security will suffer."
// Add an argument 'test-type'
DesiredCapabilities capabilities = DesiredCapabilities.chrome();
ChromeOptions options = new ChromeOptions();
options.addArguments("test-type");
capabilities.setCapability("chrome.binary","<<your chrome path>>");
capabilities.setCapability(ChromeOptions.CAPABILITY, options);
driver = new ChromeDriver(capabilities);
** Cela a fonctionné pour moi aussi voici le code **
Je pense que c'est un problème avec Chromedriver, j'ai soulevé un problème contre Chromedriver https://code.google.com/p/chromedriver/issues/detail?id=799
En attendant, vous pouvez essayer de rétrograder Chrome vers v34.
Cette erreur s'est également produite pour moi lorsque j'ai essayé d'exécuter "npm run protractor" à l'étape 3 du didacticiel Angular à https://docs.angularjs.org/tutorial/step_0
J'exécute Chrome Version 35.0.1916.153 sur un MacBook Pro.
@scheffield - merci, votre solution a fonctionné pour moi.
(De plus, il peut ne pas être évident sur cette étape 3 du didacticiel, mais comme dans les étapes précédentes, vous devez toujours démarrer votre serveur Web en ouvrant une nouvelle fenêtre de terminal dans le répertoire où vous avez téléchargé le didacticiel et en émettant "npm start". Ensuite, dans une fenêtre de terminal distincte, vous exécutez "npm run rapporteur"). Avec la configuration du rapporteur Tweak, l'erreur a disparu.
J'utilise Java, donc je ne sais pas si cela fonctionnera pour vous, mais cela peut aider.
Dans mon cas, l'ajout de .addArguments("test-type");
a en fait masqué cet avertissement. Cependant, cela a rendu l'exécution incroyablement lente.
J'ai donc remplacé cette ligne par la suivante, et cela a bien fonctionné!
options.addArguments("excludeSwitches", "ignore-certificate-errors");
#!/usr/bin/env node
var webdriver = require('Selenium-webdriver');
var driver = new webdriver.Builder().withCapabilities({
browserName : 'chrome',
'chromeOptions': {
args: ['test-type']
}
}).build();
Sélénium utilisant C # .Net (Sélénium + C # .Net)
public static IWebDriver Instance = null;
ChromeOptions opt = new ChromeOptions();
opt.AddArguments("--test-type");<br><br>
Instance = new ChromeDriver(@"Path To directory containing chromedriver.exe" , opt ) ;
Cela fonctionne pour Google Chrome Version 47.0.2526.106 m.
Code qui a fonctionné pour les scénarios de pilote Web local et de pilote distant pour Ruby Liaisons. Cela a supprimé le message d'avertissement sur chrome35 (N'oubliez pas que vous devez obtenir 2.10 chromedriver.exe de http://chromedriver.storage.googleapis.com/index.html )
Pilote Web local:
caps = Selenium::WebDriver::Remote::Capabilities.chrome("chromeOptions" => {"args" => ["test-type" ]})
@browser = Selenium::WebDriver.for :chrome,desired_capabilities: caps
RemoteWebDriver (en utilisant GRID): Notez que les ips séparés par des virgules dans le code ci-dessous sont les ips à partir desquels le concentrateur de grille est autorisé à recevoir des commandes séléniennes. Cette couche de sécurité a été implémentée à partir de chrome35 et chromedriver 2.10
caps = Selenium::WebDriver::Remote::Capabilities.chrome("chromeOptions" => {"args" => ["test-type","whitelisted-ips=comma-separated-ips"]})
@browser = Selenium::WebDriver.for :remote, :url => GRID_HUB_URL,:desired_capabilities => caps