2013-05-24 3 views
1

J'ai écrit un code pour cliquer sur le bouton radio en utilisant XPath mais ce n'est pas un clic sur le bouton radio pendant l'exécution du code.Cliquez sur le bouton radio dans Selenium Webdriver

Mon code est:

driver.FindElement(By.XPath("//a[contains(id(),rptShoppingServiceGroup_dlAddons_2_ctl01_2)]")).Click(); 

aider Veuillez comment sélectionner le bouton bouton radio particulier et après sélection, il passer à un autre bouton radio.

Merci d'avance.

+1

Quel navigateur? Quelle version de ce navigateur? Quelle version de Selenium? Est-ce qu'il trouve l'élément mais ne clique pas dessus? Avez-vous essayé d'autres localisateurs? – Arran

+0

Y a-t-il quelque chose d'étrange dans la façon dont le radiobutton est implémenté? Pouvez-vous poster le code HTML? –

Répondre

1

En fait, les œuvres click(), mais le WebDriver ne peut pas correctement rafraîchir l'interface utilisateur ...

La Methode unique que j'ai trouvé pour rafraîchir c'est-à-dire utiliser la fonction submit() dessus.

Comme:

myRadioBtn.click(); 
myRadioBtn.submit(); 

me dire ce qui se passe =)

+0

Il ne fonctionne toujours pas avec submit :( – Alven

0

Voulez-vous que RadioButton soit coché? Si oui, essayez ... Vérifié = true

var radioButton = driver.FindElement(By.XPath("//a[contains(id(),rptShoppingServiceGroup_dlAddons_2_ctl01_2)]")); 

radioButton.Checked=true; 

(or radioButton.Click()) 
0

Il pourrait être le cas que vous vérifiez le bouton radio qui est déjà cochée. Dorénavant, vous avez décoché le bouton radio que vous ne voulez pas (vous voulez que le bouton radio soit vérifié). Vérifiez d'abord si le bouton radio est coché. Si elle est cochée, ne cliquez pas dessus (sinon, le bouton radio sera désactivé). Si ce n'est pas coché, cliquez dessus pour le vérifier.

button = driver.FindElement(By.XPath("//a[contains(id(),rptShoppingServiceGroup_dlAddons_2_ctl01_2)]")) 

if (!button.isSelected()){ 
    button.click(); 
    assetTrue(button.isSelected) 
} 
+0

Je pense que le problème est que j'essaie de sélectionner des boutons radio à partir de la fenêtre de personnalisation.Si nous voulons sélectionner les boutons radio de la fenêtre pop-up.Comment coder pour la sélection – Alven

+1

Switch à cette fenêtre driver.switchTo(). window ("windowHandle"), puis effectuez les actions ci-dessus. – TDHM

Questions connexes