2013-01-24 15 views
2

J'ai besoin d'ouvrir plusieurs onglets dans un seul navigateur et j'ai besoin de basculer sur tous les onglets.Comment ouvrir plusieurs onglets dans un navigateur en utilisant Capybara?

Donnez-moi vos suggestions. Merci d'avance.

+0

Je ne suis pas sûr de votre question. s'il vous plaît clarifier moi essayez-vous d'ouvrir un onglet en cliquant sur un bouton ou un lien ou quelque chose comme ça. – Manigandan

+0

Exactement je clique sur le lien et il ouvre le nouvel onglet. Et j'ai besoin de basculer sur le nouvel onglet. Et encore une chose que je veux savoir comment ouvrir les onglets en utilisant capybara? Guide-moi. – NMKP

Répondre

1

Je ne suis pas très forte en capybara. Donc, je donne une solution pour basculer entre les onglets en utilisant le sélénium. Pour une instance, vous cliquez sur un bouton dans une page Web et une nouvelle page s'ouvrira. La nouvelle page peut s'ouvrir dans new tab in the same browser window ou in a new browser window. Ce n'est pas contrôlé par le sélénium. Il va contrôler par le navigateur que vous utilisez.

Pour une instance prendre firefox, goto tools->ptions-> tabs-> open new windows in a new tab instead cochez l'option. Par exemple, si vous cliquez sur un bouton, il ouvrira une page uniquement dans le nouvel onglet d'une même fenêtre de navigateur. Dans un souci si vous décochez signifie qu'il ouvrira une page dans la nouvelle fenêtre du navigateur. De même, chaque navigateur a ses propres paramètres.

Essayez ce code:

new Actions(driver) 
.sendKeys(driver.findElement(By.tagName("html")), Keys.CONTROL) 
.sendKeys(driver.findElement(By.tagName("html")), Keys.NUMPAD2) 
.build().perform(); 

Dans ci-dessus fait référence Keys.NUMPAD2 que vous allez déplacer à la deuxième onglet de la session. Vous pouvez passer à la troisième, quatrième, etc ... en donnant NUMPAD3, NUMPAD4, etc ... respectivement. Ici, j'utilise Windows OS, si vous êtes dans un autre système d'exploitation, utilisez leurs raccourcis.

J'espère que cela va vous aider.

+0

Merci pour votre réponse :). – NMKP

Questions connexes