0

enter image description here

I want to get an element's id attribute that is inside of an iframe through Java. How do I access an element inside of an iframe in Java?

1
  • I am little worried to see what you are automating.
    – Tarun
    Dec 8, 2013 at 16:41

2 Answers 2

1

In my experience the simplest way to manipulate elements inside of an iframe with web automation is to treat the iframe src URL as a separate page and call the driver to visit that URL instead of the parent page. From the example in the screenshot, I would have an automated step that would visit the URL in the src attribute of iframe#ComposeRteEditor_surface... (the actual src attribute wasn't visible in the screenshot), then I would call the appropriate step or findElement() function as normal.

3
  • Thanks for ur answer, I tried in the following way but i did not get the expected value. driver.switchTo().frame(driver.findElement(By.id("ComposeRteEditor_surface"))).findElement(By.tagName("img")).toString();
    – user6258
    Nov 8, 2013 at 7:48
  • Instead of driver.switchTo() try using driver.get() with the src attribute as the URL parameter. Then you can use findElementById() as normal.
    – Francis
    Nov 8, 2013 at 15:47
  • user6258, when you say you don't get the expected value, what do you get? Is there an exception? Is it having trouble finding the iframe? Is it finding the iframe but having trouble finding the element within it? Something else?
    – Sam Woods
    Nov 8, 2013 at 17:58
-1

You should try out the TestProject test recorder which can locate elements within iFrames, so you’ll be able to inspect elements and their attributes easily.

1
  • If someone is already using Selenium, is using TestProject as simple as just adding another library? Or is there a migration path? Also, generally when suggesting a new library you should provide a code example.
    – corsiKa
    Sep 16, 2020 at 3:34

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.