我能';t使用其名称切换到使用Webdriver(Java)未定义ID的帧

我能';t使用其名称切换到使用Webdriver(Java)未定义ID的帧,java,selenium,webdriver,Java,Selenium,Webdriver,以下是html: <frame name="Chooser" scrolling="YES" src="/Dispatcher?page=JobSkillsRolesEntry&sig=ZUVPdTRjeGNoSDM2cFBXNDZPc3RBam5uLzZzPTtZMlJsTVRaak1UVXRNakE1WXkwME9USmlMVGt4TkdJdFltSXdZV1ZrTVRreU9UWXg7cGFnZQ%3D%3D" marginheight=0 noresize> <

以下是html:

<frame name="Chooser" scrolling="YES" src="/Dispatcher?page=JobSkillsRolesEntry&sig=ZUVPdTRjeGNoSDM2cFBXNDZPc3RBam5uLzZzPTtZMlJsTVRaak1UVXRNakE1WXkwME9USmlMVGt4TkdJdFltSXdZV1ZrTVRreU9UWXg7cGFnZQ%3D%3D" marginheight=0 noresize>
<frameset rows="70,*" framespacing=0 frameborder="1">
    <frame name="SkillSearch" scrolling="NO" src="/Dispatcher?page=skillsRolesSearchPage&sig=WllqYlZRekpKMXV1RlVmOW1FaWlQQ3BXS0tjPTtZMlJsTVRaak1UVXRNakE1WXkwME9USmlMVGt4TkdJdFltSXdZV1ZrTVRreU9UWXg7cGFnZQ%3D%3D" marginheight=0 noresize>
    <frame name="SkillList" scrolling="YES" src="/Dispatcher?page=categoryPage&sig=dytiNVRQayswWUJISzF0TGxJNVQ1MFpCZFM0PTtZMlJsTVRaak1UVXRNakE1WXkwME9USmlMVGt4TkdJdFltSXdZV1ZrTVRreU9UWXg7cGFnZQ%3D%3D" marginheight=0>
</frameset>
以下是我使用该名称时不起作用的代码:

    driver.switchTo().defaultContent();
    driver.switchTo().defaultContent().switchTo().frame("Chooser");
    logger.info("Found Chooser Frame");
    driver.switchTo().frame("SkillSearch");
    logger.info("Found SkillSearch Frame");
    driver.switchTo().defaultContent().switchTo().frame("Chooser");
    driver.switchTo().frame("SkillList");
    logger.info("Found SkillList Frame");
    driver.findElement(By.xpath("html/body/form/table/tbody/tr[2]/td[1]/a")).click();
    driver.switchTo().defaultContent();

我想用这个名字,因为它更干净。有什么想法吗

哪一行行不通?错误是什么?什么版本的硒?这是针对哪个浏览器和版本运行的?抱歉,应该添加那个。Selenium 2.35.0 Firefox 24.0和使用名称“Chooser”的第一个开关。使用indexi工作正常我从未见过使用
.defaultContent()
。。曾经你为什么需要这个?也许这就是原因?等一下-框架集是嵌套的吗?如果是这样的话,我已经试着在硒源中调查这个问题,并自己纠正它,但没有骰子。我在这里写了一个问题-是的,这是一个嵌套的框架集。谢谢你开题。短期内,我将继续使用帧索引。
    driver.switchTo().defaultContent();
    driver.switchTo().defaultContent().switchTo().frame("Chooser");
    logger.info("Found Chooser Frame");
    driver.switchTo().frame("SkillSearch");
    logger.info("Found SkillSearch Frame");
    driver.switchTo().defaultContent().switchTo().frame("Chooser");
    driver.switchTo().frame("SkillList");
    logger.info("Found SkillList Frame");
    driver.findElement(By.xpath("html/body/form/table/tbody/tr[2]/td[1]/a")).click();
    driver.switchTo().defaultContent();