测试必须在时间、质量和成本之间获取一个平衡点,这是测试策略和测试设计的价值体现。

2.17 获取元素属性

上一篇 / 下一篇  2018-06-12 10:52:19 / 个人分类:Python+Selenium2 WebDriver API

2.17 获取元素属性

gl$XcMVe0前言51Testing软件测试网y9M~$z!E S8D
通常在做断言之前,都要先获取界面上元素的属性,然后与期望结果对比。本篇介绍几种常见的获取元素属性方法。51Testing软件测试网*ej&dd)I6@Jr"W
一、获取页面title51Testing软件测试网5P)P Z;uon#cO
1.有很多小伙伴都不知道title长在哪里,看下图左上角。51Testing软件测试网{:cc.D)K%Y(rD

9nDY+|POFDW051Testing软件测试网 sVeW [6uc"hW

Gg3_6KwiX\I0 51Testing软件测试网)r9Q'bdr ]/h:B

CJr?O:f02.获取title方法很简单,直接driver.title就能获取到。

3l+aM M2G.ql O*@051Testing软件测试网 dN1u*z:CQ

bD:Y!E7`+@051Testing软件测试网 W\7^ K1J3I

二、获取元素的文本51Testing软件测试网_ OC'SHj&_&q%m
1.如下图这种显示在页面上的文本信息,可以直接获取到
th7E1L)o%}V{o02.查看元素属性:<a id="setf" target="_blank" onmousedown="return ns_c({'fm':'behs','tab':'favorites','pos':0})
m kvM d!TP s&S0" href="//www.baidu.com/cache/sethelp/help.html">把百度设为主页</a>

})qX.\z*?0

$c3oVy.[0

Z6_[G9lqqy0

RtT"en03.通过driver.text获取到文本

&C Gqf)J.v8u0

rJ8C ]|,c0

W8PC4l:q?bk051Testing软件测试网!yw+\,k ~;_8P5ep

三、获取元素的标签
5a"e]zha*P `&x01.获取百度输入框的标签属性51Testing软件测试网q v R9^/^)E

51Testing软件测试网%P-C D_8~"V7fE'LZ

51Testing软件测试网 P,R?}|AL(d5h/s

51Testing软件测试网W8kI5Q6N

 51Testing软件测试网c#WB dW }+n-k$X:^

51Testing软件测试网'U`+A'a6Yf'EFL

四、获取元素的其它属性
H2P${'Cm(m2b4i01.获取其它属性方法:get_attribute("属性"),这里的参数可以是class、name等任意属性
K@b6u`i,ap(f02.如获取百度输入框的class属性

:|5Fp jzwh051Testing软件测试网e,z'By%Qj1g6DW%w5h

51Testing软件测试网$~e2e l#l;O I

51Testing软件测试网i `+h+J F-ZJ6j5{ j

五、获取输入框内的文本值
KT*`N7@JE8X YI3X#r01、如果在百度输入框输入了内容,这里输入框的内容也是可以获取到的51Testing软件测试网+RQ `b(J*| f!n@

4[ b |0jg'v!m,F5R0

%l/bmb!t`X0w0

-R f{EA(\;W1hP0六、获取浏览器名称51Testing软件测试网v n9R#o5qj
1.获取浏览器名称很简单,用driver.name就能获取到51Testing软件测试网.?Tv-t8Igy ep

51Testing软件测试网 G3Lh-E"g @

# 获取浏览器名称
X%L7Q,IN\0driver.name
D8X*w^9u9b;q^~'DZ0七、参考代码

GWaQ/C%T2z0
复制代码
#coding:utf-8fromseleniumimportwebdriverimporttime
driver=webdriver.Firefox()
driver.implicitly_wait(10)
driver.get("http://www.baidu.com")
time.sleep(2)
k;aJET2y7M/i ^r+n0title
=driver.titleprinttitle text= driver.find_element_by_id("setf").textprinttext#获取元素的标签tag = driver.find_element_by_id("kw").tag_nameprinttag#获取元素的其它属性name = driver.find_element_by_id("kw").get_attribute("class")printname#获取输入框的内容driver.find_element_by_id("kw").send_keys("yoyoketang") value= driver.find_element_by_id("kw").get_attribute("value")printvalue#获取浏览器名称printdriver.name
复制代码

TAG:

 

评分:0

我来说两句

Open Toolbar