c# - select radio button by index -


i using c# selenium driver in visual studio automating scripts.the data in radio button gets dynamically generated , want select radio button using index . these ways tried

method 1

new selectelement(driver.findelement(by.id("xx"))).selectbyindex(2);click(); 

in first method , not able relate click element

method 2

iwebelement element = driver.findelement(by.("xx")); system.threading.thread.sleep(2000); element.click(); 

in method 2 , not sure how pass index.

this html code :

<input type="radio" name="xxxx" id="xxxx" value="5273786">. 

so these radio buttons dynamically generated. eg, if have 3 radio buttons, all 3 radio buttons have same id , name different value.

so great if let me know how select first radio button passing value or selecting radio button using index.

you should try below :-

  • if select radio button value try below using by.xpath() :-

    iwebelement element = driver.findelement(by.xpath("//input[@value = '5273786']"));  element.click(); 

    or try below using by.id() :-

      ilist<iwebelement> elements = driver.findelements(by.tagname("select"));   var element = selectelements.where(se => se.getattribute('value') == '5273786');   element.click(); 
  • if want select radio button using index try below using by.xpath() :-

     iwebelement element = driver.findelement(by.xpath("(//input[@id = 'xxxx'])[1]"));  element.click(); 

    or try below using by.id() :-

    ilist<iwebelement> elements = driver.findelements(by.id("xxxx")); elements[0].click(); 

hope helps...:)


Comments