2010-06-27 13 views
1

J'ai une boucle qui vérifie l'existence des URL. S'il n'en existe aucune Selenium se termine: XHR ERREUR: URL = http://localhost/pages/156.php Response_Code = 404 Error_Message = Introuvable.Échec de la méthode ouverte de la poignée Selenium RC (404)

Si je surprends l'exception:

try { 
    $this->selenium->open($url); 
} 
catch(PHPUnit_Framework_Exception $e) { echo "caught\n"; } 

Tout ce que je fais après me donne cette erreur: erreur Exception Server: sessionId ne doit pas être nul; cette session a-t-elle déjà commencé?

J'ai même essayé de régler l'exception comme prévu:

$this->selenium->setExpectedException('PHPUnit_Framework_Exception'); 

Mais encore la séance est arrêtée et le test est terminé. Comment puis-je faire Selenium continuer à tester les URL? Merci.

Répondre

0

Créer une nouvelle instance de sélénium pour chaque URL!

$this->selenium = new Testing_Selenium("*firefox", "http://your-app-under-test.org/"); 
$result = $this->selenium->start(); 
$this->selenium->open("/the-page-to-test.php"); 

ou voir http://pear.php.net/package/Testing_Selenium/docs/0.4.3/Selenium/Testing_Selenium.html#method__construct pour référence, il y a plus d'arguments au constructeur.

+0

Merci Moritz, vous avez raison. En fait, je peux attraper l'exception et commencer une nouvelle session. Cela marche! –