views:

132

answers:

2

So right now I'm trying to figure out how I can switch focus to a frame in Selenium 2 when the frame has no name or id? For a named frame I do:

driver.SwitchTo().Frame(FrameName);

but what is there is no name? Has anyone had experience with this?

A: 

In selenium if you know that the relative location of the frame you should be able to use the selectFrame command with the string "relative=up" to move it up a frame e.g. selenium.SelectFrame("relative=up"); or to jump to the top frame use "relative=top"

Nathan
Do you know if this exists in Selenium 2?
James
+1  A: 

driver.switchTo.frame() is overloaded to accept a frame name or an integer. This int is a 0 based index of the frames available. The first frame would be 0, the second 1 and so on.

I've just run a really quick test using the java binding and Firefox against this HTML page.

<html>
<frameset rows="50%,50%">
    <frame src="frame_a.htm" />
    <frame src="frame_b.htm" />
</frameset>
</html>

I'm successfully able to use driver.switchTo().frame(0); to refer to frame a and driver.switchTo().frame(1); to access frame b.

pnewhook