Selenium Webdriver API(2)

15、获取元素基本信息
#启动IE浏览器
driver = webdriver.Ie(executable_path="IEDriverServer")
#打开搜狗
driver.get("http://www.sogou.com")
#获取“新闻”
link = driver.find_element_by_xpath(u"//*[text()=‘新闻‘]")
#查看link类型
type(link) #link为webElement对象
#查看link属性和方法
dir(link)
#获取文本值
print link.text
#获取元素标签名
link.tag_name
#获取元素大小
link.size
#获取属性
link.get_attribute("href")
#获取元素在页面中的位置
link.location
练习:获取百度搜索按钮中的文字“百度一下”
driver.get("http://www.baidu.com")
bot = driver.find_element_by_id("su")
print bot.get_attribute("value")

16、判断元素是否可见 is_displayed
driver.get("http://www.sogou.com")
submit_botton = dirver.find_element_by_id("query")
submit_botton.is_displayed()

练习:判断按钮是否可见
测试代码:test_visible.html (安装Apache后,并配置好后,将文件放到htdocs中,然后在本地浏览器打开)
http://localhost:8080/test_visible.html

test_visible.py
#encoding=utf-8
import unittest
from selenium import webdriver

class VisitByIE(unittest.TestCase):
    def setUp(self):
        # 启动浏览器
        self.driver = webdriver.Ie(executable_path="D:\\IEDriverServer")
    def test_visible(self):
        self.driver.get("http://localhost:8080/test_visible.html")
        divs = [self.driver.find_element_by_id("div"+str(i)) for i in range(1,5)]
        b1 = self.driver.find_element_by_id("button1")
        b2 = self.driver.find_element_by_id("button2")
        for div in divs:
            if div.is_displayed():
                print div.is_displayed()
            else:
                print div.is_displayed(),"div not visible"
        b1.click()
        b2.click()
        print "++++++++++++++++++++++++++++++++"
        for div in divs:
            if div.is_displayed():
                print div.is_displayed()
            else:
                print div.is_displayed(),"div not visible"

def tearDown(self):

        self.driver.quit()

if __name__ == "__main__":
    unittest.main()

17、判断元素是否可用 is_enabled
测试网页:test_enable.html
driver.get("http://localhost:8080/test_enable.html")
input1 = driver.find_element_by_id("input1")
input1.is_enabled()

18、获取css内容 value_of_css_property
input1.value_of_css_property("width")
input1.value_of_css_property("font-family")

19、清空输入框 clear
input1.clear()

20、输入内容 send_keys
input1.send_keys("test")

21、点击按钮 click
driver.get("http://localhost:8080/test_button.html")
button = driver.find_element_by_id("button")
button.click()

22、双击 double_click
driver.get("http://localhost:8080/test_doubleclick.html")
inputbox = driver.find_element_by_id("inputBox")
from selenium.webdriver import ActionChains
action_chains = ActionChains(driver)
action_chains.double_click(inputbox).perform()

测试代码:
double_click.py
#encoding=utf-8
import time
import unittest
from selenium import webdriver

class VisitLocalwebByIE(unittest.TestCase):
    def setUp(self):
        #启动浏览器
        self.driver = webdriver.Ie(executable_path="D:\\IEDriverServer")
    def test_doubleClick(self):
        #自定义的测试网页
        url = "http://localhost:8080/test_doubleclick.html"
        #打开网页
        self.driver.get(url)
        #获取页面输入框元素
        inputbox = self.driver.find_element_by_id("inputBox")
        #导入支持双击的包
        from selenium.webdriver import ActionChains
        #实例化ActionChains
        action_chains = ActionChains(self.driver)
        #双击
        action_chains.double_click(inputbox).perform()
        time.sleep(3)

def tearDown(self):
        self.driver.quit()

if __name__ == "__main__":
    unittest.main()

原文地址:https://www.cnblogs.com/test-chen/p/10331350.html

时间: 2024-10-26 14:40:50

Selenium Webdriver API(2)的相关文章

Selenium Webdriver API(4)

27.操作复选框 checkBox#encoding=utf-8import unittestimport timefrom selenium import webdriver class VisitLocalWebByIE(unittest.TestCase):    def setUp(self):        #启动浏览器        self.driver = webdriver.Ie(executable_path = "D:\\IEDriverServer")    d

Selenium Webdriver API(6)

33.右键 context_click 在某个对象上点击右键#encoding=utf-8from selenium import webdriverimport unittestimport timefrom selenium.webdriver import ActionChainsimport win32conimport win32clipboard as w #设置剪切板def setText(aString):    w.OpenClipboard()     w.EmptyClip

<译>Selenium Python Bindings 6 - WebDriver API

本章涉及Selenium WebDriver的所有接口. Recommended Import Style 推荐的导入风格如下: from selenium import webdriver 然后,你可以这样访问所有的类: webdriver.Firefox webdriver.FirefoxProfile webdriver.Chrome webdriver.ChromeOptions webdriver.Ie webdriver.Opera webdriver.PhantomJS webdr

[selenium webdriver Java]常用api

1. 获取元素文本 WebElement类的getText()方法返回元素的innerText属性.所以元素里如果有子节点一样也会被返回出来.如下所示 1 public class GetText { 2 @Test 3 public void testGetText(){ 4 //启动driver,打开被测页面 5 System.setProperty("webdriver.chrome.driver", "chromedriver.exe"); 6 WebDri

selenium之WebDriver API

自动化只要掌握四步操作:获取元素,操作元素,获取返回结果,断言(返回结果与期望结果是否一致),最后自动出测试报告,元素定位在这四个环节中是至关重要的,如果说按学习精力分配的话,元素定位占70%:操作元素10%,获取返回结果10%:断言10%.如果一个页面上的元素不能被定位到,那后面的操作就无法继续了.而WebDriver 属于Selenium体系设计出来操作浏览器的一套API,它支持多种语言,Selenium WebDriver只是python的一个第三方框架,也就是说是一个实现web自动化的第

Selenium中WebDriver API的使用(三)

WebDriver API中常用的方法和属性 方法: clear() --->清除一个文本输入框 p:driver.find_element_by_id("kw").clear() send_keys()  -->来输入字符串 p:driver.find_element_by_id("kw").send_keys("Selenium") click() -->点击页面上支持点击的元素 driver.find_element_by

Selenium WebDriver(Python)API

1.通过示例介绍Selenium-WebDriver 一个简单的入门方法就是这个例子,它在Google上搜索术语"Cheese",然后将结果页面的标题输出到控制台. java csharp pythonfrom selenium import webdriverfrom selenium.common.exceptions import TimeoutExceptionfrom selenium.webdriver.support.ui import WebDriverWait # 可

Selenium2(java)selenium常用API 四

WebElement相关方法 1.点击操作 WebElement button = driver.findElement(By.id("login")); button.click(); 由元素对象调用click()方法:   2.清除操作 WebElement username = driver.findElement(By.id("username_input")); username.clear(); 调用之后,会把输入框的内容全部清空:   3.获得元素属性

Selenium 中文API

1.1   下载selenium2.0的lib包 http://code.google.com/p/selenium/downloads/list 官方UserGuide:http://seleniumhq.org/docs/ 1.2   用webdriver打开一个浏览器 我们常用的浏览器有firefox和IE两种,firefox是selenium支持得比较成熟的浏览器.但是做页面的测试,速度通常很慢,严重影响持续集成的速度,这个时候建议使用HtmlUnit,不过HtmlUnitDirver运