如何在ruby selenium webdriver中管理框架
我使用的是RUBY selenium webdriver,不是java,不是c等等。请注意,解决方案必须是RUBY。所以,我有一个Id为wicket窗口3的框架。要定位此元素,我应用:如何在ruby selenium webdriver中管理框架,ruby,selenium-webdriver,Ruby,Selenium Webdriver,我使用的是RUBY selenium webdriver,不是java,不是c等等。请注意,解决方案必须是RUBY。所以,我有一个Id为wicket窗口3的框架。要定位此元素,我应用: driver.switch_to.frame driver.find_element(:id, "_wicket_window_3") 我的frama有辅助按钮、出口按钮和终端按钮 现在,如何管理框架?我想单击按钮Adjuntar、Terminar或Exportar 如果我在那里尝试: frame = dri
driver.switch_to.frame driver.find_element(:id, "_wicket_window_3")
我的frama有辅助按钮、出口按钮和终端按钮
现在,如何管理框架?我想单击按钮Adjuntar、Terminar或Exportar
如果我在那里尝试:
frame = driver.switch_to.frame driver.find_element(:id, "_wicket_window_3")
frame.click_button("Adjuntar")
回答是:未定义的方法
请帮帮我
尊敬的阿古斯丁。您无法在计划时管理切换到的iframe。 当你这样做的时候
driver.switch_to.frame driver.find_element(:id, "_wicket_window_3")
您的上下文开始在这个iframe中,您现在对驱动程序执行的所有操作都将在这个iframe中
因此,在切换后,请执行以下操作:
driver.click_button("Adjuntar")
它应该点击按钮。我不认为点击按钮是正确的命令,这就是为什么你得到的错误是未定义的方法 您必须切换到框架,然后像以前一样查找该按钮的元素以查找框架,然后单击它 差不多
driver.switch_to.frame driver.find_element(:id, "_wicket_window_3")
driver.find_element(:id, "id_of_the_button_you_want_to_click").click
注意:这里使用了:id,但是你可以使用任何你想要的定位器,:css,:xpath,:class,无论什么正如你所说的,解决方案必须是ruby的,那么为什么其他语言会被标记呢。。我正在移除这些。这个点击按钮是什么?为什么不使用类似于driver.find_元素:id,'yourButtonId'。单击driver.switch_到.frame driver.find_元素:id,\u wicket\u window\u 3后,找到按钮附件并单击它。。。让我知道你看到了什么..点击按钮是rwebspec的一种方法。我没有按钮的id,因此我使用click_Button和Juntar。如果我尝试driver.switch\u to.frame driver.find\u元素:id,\u wicket\u window\u 3 driver.click\u按钮ADJUNtar,则响应为:找不到元素。因此,我想将框架分配给一个变量,然后管理该变量。在本例中,变量为“frame”,但我找不到结果。在SeleniumWebDriver的Ruby绑定中,不存在类似click_按钮的方法。它只有点击。