最近我在Selenium IDE中使用命令“selectFrame> relative = up”在嵌套帧之间切换。由于我决定重写Selenium和Ruby中的所有代码,我找不到这个命令模拟所提到的语言。
我无法按名称选择框架,因为在重新加载后它会有所不同。其他框架属性是:
iframe id="ext-comp-1465" name="ext-comp-1465" frameborder="0" src="/5005700001V96Ub/e?retURL=%2F5005700001V96Ub&isdtp=vw&cancelURL=%2F5005700001V96Ub&nonce=a37ade0829c6d08539a765cd370dff0766cd596851439e853d68a60e9d7c28d0&sfdcIFrameOrigin=https%3A%2F%2F*************.com" class=" x-border-panel" style="left: 0px; top: 0px; width: 329px; height: 641px;"></iframe
请告诉我如何使用“relative = up”选项或其他框架属性进入此框架。提前谢谢。
答案 0 :(得分:0)
尝试以下方法,
driver.switch_to.frame "ext-comp-1465"
或
driver.switch_to.frame driver.find_element(id: 'ext-comp-1465')
或
driver.switch_to.frame driver.find_element(name: 'ext-comp-1465')
或
driver.switch_to.frame driver.find_element(xpath: '//iframe[starts-with(@id,"ext-comp-"] ')
答案 1 :(得分:0)
最终解决方案:
frames = @driver.find_elements(:xpath, '//iframe[starts-with(@id,ext-comp-)]')
@driver.switch_to.frame frames[1]