2017-06-20 20 views
1

Je cours mes tests Geb avec webdriver et je veux exécuter tous les tests fonctionnels en boucle différentes URL de base au lieu de l'URL de base par défaut statique. Y a-t-il un moyen d'y parvenir? Toutes les fonctionnalités pour les URLs que je voulais boucler seront les mêmes, donc il n'y aura pas de problèmes avec les cas de test.Comment pouvons-nous boucler différentes URL de base au lieu de l'URL de base par défaut et exécuter des tests fonctionnels?

+0

Pouvez-vous nous indiquer votre code? – Buaban

+0

Bonjour, Bienvenue dans le débordement de la pile. Reportez-vous au lien [stackoverflow.com/help/how-to-ask](https://stackoverflow.com/help/how-to-ask) pour plus d'informations sur comment poser une question et mettre à jour votre question en conséquence. . –

Répondre

2

Ceci est possible en utilisant browser.setBaseUrl et tableaux de données chasserai

@Unroll 
class NewTest extends GebReportingSpec { 

    def "I see the correct stuff when i visit a url"(){ 

     when: "I visit a url" 

      browser.setBaseUrl(baseUrl) 
      def aPage = browser.to(APage) 

     then: "I see what im meant to see" 

      1 == 1 

     where: 

      baseUrl | _ 
      "http://www.google.com" | _ 
      "http://www.stackoverflow.com" | _ 
    } 
} 

Notez que les tables de données doivent être 2 colonnes, donc en utilisant un trait de soulignement après un tuyau vous permet d'avoir une seule colonne de données.

Plus d'infos ici:

http://spockframework.org/spock/docs/1.0/data_driven_testing.html

Note: J'ai supposais votre Geb à l'aide + Spock.