CasperJS et "Dangereux JavaScript tentative d'accès à une image avec l'URL' erreur
J'ai simple page avec du javascript qui valide e-mail écrit en entrée:
email.html:
<!DOCTYPE html>
<html>
<head>
<title>Email validation</title>
<script src="email.js"></script>
</head>
<body>
<span style="padding: 5px;">
<input type="text" id="email-input" placeholder="Email..."></input>
</span>
</body>
</html>
email.js:
var checkEmail = function() {
var regexp = /BIG_REGEX/;
var email = document.getElementById('email-input').value;
if (email === '')
removeFrame();
else if (regexp.test(email))
drawFrame('green');
else
drawFrame('red');
};
var removeFrame = function() {
var input = document.getElementById('email-input');
input.parentNode.style.backgroundColor = input.parentNode.parentNode.style.backgroundColor;
};
var drawFrame = function(color) {
var input = document.getElementById('email-input');
input.parentNode.style.backgroundColor = color;
};
window.onload = function() {
document.getElementById('email-input').onkeyup = checkEmail;
};
Je veux tester la fonctionnalité de validation à l'aide de CasperJS. Voici mon cas de test:
test/validator.test.js:
var fillEmail = function(browser, email) {
browser.sendKeys('#email-input', email, {reset: true});
};
var getValidation = function(browser) {
var color = browser.evaluate(function () {
return document.getElementById('email-input').parentNode.style.backgroundColor;
});
return color;
};
var validate = function(browser, email) {
fillEmail(browser, email);
return getValidation(browser);
};
casper.test.begin('Validation testing', function suite(test) {
casper.start('http://localhost:8000/email.html', function() {
test.assertEquals(validate(this, '[email protected]'), 'green', '[email protected]');
test.assertEquals(validate(this, 'vnbgfjbndkjnv'), 'red', 'vnbgfjbndkjnv');
}).run(function() {
test.done();
});
});
Mais quand je lance des tests à l'aide casperjs test test/validator.test.js
, il y a toujours un message d'erreur après les informations sur les tests:
Unsafe JavaScript attempt to access frame with URL about:blank from frame with URL file:///C:/Users/home/AppData/Roaming/npm/node_modules/casperjs/bin/bootstrap.js. Domains, protocols and ports must match.
Quel est le problème?
PhantomJS version: 1.9.8
- Avez-vous rétréci vers le bas la ligne qui en est la cause? Si non, ajouter un peu de console.journal et essayez de la réduire à une seule ligne.
- Cette ligne est imprimée lors de l'essai de passage (après
PASS 2 tests executed in 2.693s, 2 passed...
) - 1.9.8
- C'est à cause de certains changements qui a été introduit dans PhantomJS 1.9.8 et il y a un CasperJS question à ce sujet. Donc, this peut-être lié, mais depuis que cette erreur arrive lorsque le script terminé, je ne vois pas ce qui peut être fait.
- Ok, cela arrive lorsque le script se termine. Je ne vois pas que tout ce qui peut être fait pour CasperJS pour supprimer ces avertissements. J'ai créé un GitHub question pour le PhantomJS problème.
Vous devez vous connecter pour publier un commentaire.
Récente PhantomJS (1.9.8) présente ce message d'erreur. Elle ne cause pas de réel problème, d'autres que la confusion lignes du journal en quittant PhantomJS.
Il est fixé dans les inédits de 1,9 branche:
https://github.com/ariya/phantomjs/pull/12720
Ce problème est résolu dans phantomjs la version 1.9
"
phantomjs": "^1.9.9"
pour casperJs
J'ai été faire cette même erreur, j'ai donc essayé la mise à jour de
phantomjs 1.9.9
(à partir de1.9.8
). Cependant, j'ai été faire une installation d'erreur lorsque vous essayez d'installer1.9.9
, donc je baisse rev-ed àphantomjs 1.9.7
, et fixé cette erreur pour moi. Donc, il me semble que c'est un problème présent dansphantomjs 1.9.8
.Hey il existe plusieurs solutions pour essayer de l'obtenir autour de cette sortie fantôme d'une manière différente comme
De la DOSE QUI AIDE PAS et
au lieu de
Rien n'a fonctionné!!!
J'ai essayé plusieurs versions différentes de PhantomJS.
Ma sortie est JSON et après de nombreuses heures de tentatives infructueuses de JSON.parse(stdout)j'ai dû abandonner. Je me suis dit "F", je suis juste allez gérer le " F avec erreur.
si simple avant de me quitter, je
et Après j'envoie
Quand je reçois mes résultats, j'ai simplement remplacer tous les sauts de ligne et d'ignorer l'erreur
Côté remarque: ce problème a été essayé à être fixé avec phantom 1.9.9 mais au lieu de la axée sur le renforcement phantom 2.0 qui n'est pas compatible avec CasperJS