7

I have a button:

<input type="button" onclick="onOpenSessionClick()" value="Open device access">     

But when I do the command:

driver.findElement(By.xpath("//input[@value='Open access device' and @type='submit']")).click();

The click does not. Here is my code:

if (isElementPresent((By.xpath("//input[@value='Open device access']")))) 
{
    System.out.println("Je suis dans le if");
    Thread.sleep(2000);
    driver.findElement(By.xpath("//input[@value='Open device access' and @type='submit']")).click();
    System.out.println("Je suis dans le if et jai open");
    Thread.sleep(5000);
    assertTrue(isElementPresent(By.xpath("/html/body/div[2]/div[3]/div[3]/div[2]/div/div[2]/div[2]/div/div[6]/div/div/div/p/span")));                       
    assertTrue(isElementPresent(By.xpath("/html/body/div[2]/div[3]/div[3]/div[2]/div/div[2]/div[2]/div/div[6]/div/div/div[2]/input")));                     
    assertTrue(isElementPresent(By.xpath("/html/body/div[2]/div[3]/div[3]/div[2]/div/div[2]/div[2]/div/div[6]/div/div/div[2]/input[2]")));                      
    System.out.println("Je suis dans le if et je cherche");
}
Arran
  • 24,648
  • 6
  • 68
  • 78
Julien P.
  • 91
  • 1
  • 2
  • 8
  • I am also having the same problem, any solution? For my case ,the browser is fired up,does A..B..C then when it reaches the point to click that button, the browser closes up. – bademba Aug 13 '16 at 09:08

4 Answers4

5

You can try this one too as CSS Selector

driver.findElement(By.cssSelector("input[type='button'][value='Open device access']")).click();

or

driver.findElement(By.cssSelector("input[type='button']")).click();
Omkar
  • 182
  • 11
  • thank you My problem is not with the click but finally that the button is in a javascript accordion. But the element is not visible so I think the javascript is not executed. A solution? – Julien P. May 14 '13 at 08:30
  • Can u look into this [link](http://stackoverflow.com/questions/11947832/how-to-click-a-button-in-webdriver-using-javascript).I think may be this will resolve u r problem.But no fully sure on this. – Omkar May 14 '13 at 08:53
  • Thanks but I think of my webdriver seveur does not execute the javascript. Locally all my script works. My server is on a Debian 1.6.0 and Iceweasel – Julien P. May 14 '13 at 09:12
3

type in your case is button, not submit.

Try this one //input[@value='Open device access'] or //input[@value='Open device access' and @type='button']

ievche
  • 1,735
  • 14
  • 22
  • Thank you My problem is not with the click but finally that the button is in a javascript accordion. But the element is not visible so I think the javascript is not executed. A solution? – Julien P. May 14 '13 at 08:27
  • I do not understand a question totally, could you please provide more details? – ievche May 14 '13 at 10:07
0

You can check whether this button is on frame or not. If it is, then you need to switch to the frame and then locate and click.

Hope this will help you.

Sagar Ajmire
  • 333
  • 3
  • 13
-2

Just try the below code for click

selenium.focus("name=Valuation"); //name of button
selenium.click("Valuation"); //pass that name to click
Ram
  • 3,092
  • 10
  • 40
  • 56