-->

硒2.9选择图片(Select Image in Selenium 2.9)

2019-10-24 03:29发布

我试图用RSpec的尝试和自动化这里维修后的周末,我在哪里实习测试。 我使用webdriver的硒2.9.0得到一个骨架去,然后加入个性化的代码。 什么我目前停留在试图有一个图像,然后将导航到正确的HTML的webdriver的点击,但我现在不能这样做。 这里是我到目前为止...

   it "can go to Ultratime" do
     @ie_driver.find_element(:link, "My Resources").click
     wait.until { @ie_driver.execute_script("return document.readyState;") == "complete" }
     sleep 3
     wait.until { @ie_driver.find_element(:link_text => "Login").displayed?}
       #test above line
       puts "found Ultratime"

     #this just finds the "Logout" button and clicks it
     @ie_driver.find_element(:name, "ee").click
   end

这里是属于上述“按钮,”对于我试图通过浏览该网站的HTML代码:

<body id="ultratime-insidend" class="ultratime ultratime-insidend ">
<p id="ultratime">
<a class="single" href="#">
    <img alt="Ultratime" src="https://controller.nd.edu/stylesheets/images/logo2.gif"></img>
    Login
</a>

任何帮助将不胜感激!

Answer 1:

点击图片作品就像点击任何其他元素。 如果你有问题定位的形象,给它id和使用CSS选择器即

driver.find_element_by_css_selector("#yourimageid").click()

编辑:到焦点切换到帧时,使用方法:

driver.switch_to.frame driver.find_element(..)

任何定位应该工作,如果你不能设置ID,如

drive.switch_to.frame driver.find_element( :xpath, "//iframe" )


Answer 2:

点击图片作品就像点击任何其他元素。 如果你有>问题的定位图像,给它的ID和使用CSS选择器即

 driver.find_element_by_css_selector("#yourimageid").click() 

编辑:到焦点切换到帧时,使用方法:

 driver.switch_to.frame driver.find_element(..) 

任何定位应该工作,如果你不能设置ID,如

 drive.switch_to.frame driver.find_element( :xpath, "//iframe" ) 

谢谢Borsunho,找出我需要先找到的iframe它使事情简单得多了。 这是我的最终结果是:

 it "can go to Ultratime", focus: true do
   @ie_driver.find_element(:link, "My Resources").click
   @ie_driver.switch_to.frame(@ie_driver.find_element(:css, 'iframe[src="https://controller.nd.edu/ultratime/insidend/"]'))
   @ie_driver.find_element(:class,"single").click
 end


文章来源: Select Image in Selenium 2.9