2010-12-12 4 views
0

J'essaie l'intégration Geb (0.5.1) Grails (1.3.5). Lorsque vous utilisez le runner JUnit (extends grails.plugin.geb.GebTests), l'application Web n'est pas démarrée avant l'exécution du test Geb. Par conséquent le test échoue, avec Firefox disant qu'il ne peut pas établir une connexion au serveur à localhost: 8090.Les tests fonctionnels de Geb dans Grails échouent parce que l'application web n'a pas été démarrée

Dans le même test-app, les tests fonctionnels au sélénium (sélénium-rc 1.0.2) se déroulent sans problème. Quelqu'un a-t-il une idée de la raison pour laquelle l'application web Grails n'est pas démarrée avant les tests fonctionnels de Geb alors qu'elle est correctement démarrée pour les tests fonctionnels au sélénium?

import geb.* 

class GebTests extends grails.plugin.geb.GebTests { 

    void testIndexSearch() { 
     Browser.drive("http://localhost:8090/agora") { 
      go('/admin') 
      assert title == 'the title' 
     } 
    } 

} 
+0

Ruben, est ce test dans le répertoire test/fonctionnel dans votre projet Grails? –

+0

Oui, le test se trouve dans le répertoire test/functional/xx/yy/zz. – Ruben

Répondre

3

Browser.drive() ne devrait pas être nécessaire. Avez-vous essayé ce qui suit?

import geb.* 

class GebTests extends grails.plugin.geb.GebTests { 
    void testIndexSearch() { 
     go('/admin') 
     assert title == 'the title' 
    } 
} 

Pour définir une URL de base autre que la racine de l'application Grails, ajouter:

String getBaseUrl() { "http://some/url" } 
+0

Après avoir supprimé l'instruction Browser.drive() {} environnante, le test aboutit. THX – Ruben

Questions connexes