2010-12-06 6 views
5

Je suis en train d'obtenir un environnement mis en place qui agit comme une grille de sélénium en ce que:
1) Il exécute les tests en parallèle sur un ensemble distribué de clients
2) Je peux spécifier des essais à exécuter sur spécifiques des clients (qui fonctionnent sur des systèmes d'exploitation différents, avec des navigateurs différents), ou des tests à exécuter une fois sur tous les clients ou toute combinaison de ceux-ci. Le problème est que Capybara utilise actuellement WebDriver, pas sélénium, donc pour autant que je sache, je ne peux pas spécifier une grille de sélénium pour les tests à raccorder et à faire fonctionner.Y at-il quelque chose de similaire à la grille de sélénium lors de l'utilisation de concombre/capybara?

J'ai regardé dans des choses telles que DeepTest et Testjour, mais ni les rayures ni les démangeaisons ci-dessus. J'aimerais qu'il y ait un moyen de marquer une fonction de concombre avec les navigateurs sur lesquels je veux qu'elle fonctionne, et elle le fait tout simplement, comme le fait actuellement la grille de sélénium. Y a-t-il un moyen facile de le faire sans beaucoup de piratage de ma part, ou dois-je attendre la sortie de Selenium 2? Oh et je devrais ajouter que j'aime garder capybara la capacité d'échanger des pilotes web à volonté - fonctionnant sur le sélénium (ou WebDriver je devrais dire devrais-je dire), htmlunit, etc.

Répondre

1

Il existe actuellement une version de grille pour webdriver en cours de développement.

Vous pouvez trouver des informations à ce sujet here

+0

Je vais certainement vérifier. Merci! – bergyman

1

donc une solution possible, je suis ici à creuser dans Hydra est. Il semble fonctionner pour l'exécution parallèle de scénarios de concombre sur plusieurs machines en utilisant simplement ssh, grattant ainsi la démangeaison # 1 ci-dessus. Je l'ai mis en place et le faire fonctionner correctement sur deux macs et une machine virtuelle Windows, et les choses se passent bien. Cependant, la démangeaison n ° 2 reste non rayée. Je l'ai donc forked, et mon premier passage est simplement de mettre en place un moyen d'exécuter toutes les fonctionnalités sur toutes les machines de manière parallèle, en s'assurant que toutes les fonctionnalités sont testées sur tous les navigateurs pris en charge que nous avons. Mon prochain passage sera peut-être de bidouiller de manière à pouvoir spécifier quelles fonctionnalités fonctionnent sur quelles machines, si le temps le permet et si le besoin est assez grand. Nous verrons comment ça se passe.

Questions connexes