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

2.32 js几种定位方法总结

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

2.32 js几种定位方法总结

g*j%F|9l/O]0前言
3W#UJ*l+}:G J/@/O l0本篇总结了几种js常用的定位元素方法,并用js点击按钮,对input输入框输入文本
k"wSru&T0 51Testing软件测试网+eX}2E|!?s
一、以下总结了5种js定位的方法51Testing软件测试网%_Q(n~S
除了id是定位到的是单个element元素对象,其它的都是elements返回的是list对象
8I5Q:^)Wwnm01.通过id获取
!]9w|.h0LIS0document.getElementById(“id”)51Testing软件测试网/h'B8fw(o9B.X Z:h1] _
2.通过name获取51Testing软件测试网NbSw;Pm!K
 document.getElementsByName(“Name”)

)Z`G Z.H0j [+j9j0

IY"o4KQ]0返回的是list

'Ri'B bJd;x0

h Z5l W&zzi03.通过标签名选取元素
W7Tm;a*d,~%x@8V4Rc0document.getElementsByTagName(“tag”)
2\2kq'?c#gF7h? a8K04.通过CLASS类选取元素51Testing软件测试网r6{7s.E{
document.getElementsByClassName(“class”)
La\[.x;~0兼容性:IE8及其以下版本的浏览器未实现getElementsByClassName方法
&jZFZ]7L9A;x wV5s05.通过CSS选择器选取元素
e7L'O0c0b(Qb0document.querySelectorAll(“css selector")
O5Hc^Z e [*z!\0兼容性:IE8及其以下版本的浏览器只支持CSS2标准的选择器语法51Testing软件测试网 P%_w(^/qP
 
$z]`z3R~p0二、id定位51Testing软件测试网 _ G,AuY0LGXi
1.定位博客首页的管理按钮:id="blog_nav_contact"

/^r(N X$YutC0

I{1z/jd`0

e`B Lu051Testing软件测试网f2e-F-R T

2.js的定位语法里面id定位获取的是单个元素对象,可以直接用click()方法点击元素

&XGOL\ f051Testing软件测试网 n#B^DM']q

51Testing软件测试网!eNjHn,V"O+p ~"D Kn

dC3w.hk Hb^5@0 51Testing软件测试网 mD&ln$hy

*zVvAL/_c'w@0三、class定位51Testing软件测试网)`:H[2q1z3qzC&B]
1.js里面class定位获取到是是一个list列表对象51Testing软件测试网&t!b2Pc*U-N8q
2.操作元素的话通过下标取对应的第几个值,如果只用一个那就取下标[0]

6`Qbaa@.iV0x0

[ F){t(ro!~ J0

Bm%Kl$||b\ Q0

{R6I D3Fh9Ka3o03.定位到输入框,可以直接用value="xxx"方法输入内容

yH:H g*hN1LN051Testing软件测试网|G)P$i8B b5lAQH

51Testing软件测试网M`I l~r

G7DO9|!A:O04.ByName和ByTagName跟上面class一样,都是定位的一组元素
A6Q,M#}PZ${P2Nqc0 51Testing软件测试网x8BN8n!I
四、CSS选择器
\!j Qf:d9d X9UB01.css选择器定位到的也是一组元素,语法跟前面学到的css语法是一样的

^:_cU Sqe2U K1H*Y051Testing软件测试网+KU&Z0Ll;G+i

&q H!pO FsG:n0

w/C JRo7E.P1l0五、参考代码:

7M&E4p8Uo0
复制代码
#coding: utf-8fromseleniumimportWebdriverimporttime

driver=webdriver.Firefox()
driver.get("http://cnblogs.com/yoyoketang")#定位首页管理按钮:id=blog_nav_contactjs1 ='document.getElementById("blog_nav_contact")'.click;'driver.execute_script(js1)#输入账号js2 ='document.getElementsByClassName("input-text")[0].value="悠悠";'driver.execute_script(js2)#输入密码js3 ='document.getElementsByClassName("input-text")[1].value="xxx";'driver.execute_script(js3)#勾选记住密码js4 ='document.getElementsByName("remember_me")[0].click();'driver.execute_script(js4)#点击登录按钮js5 ='document.querySelectorAll(#signin)[0].click();'driver.execute_script(js5)
复制代码
51Testing软件测试网)w:G dcA^ v.\O

TAG:

 

评分:0

我来说两句

Open Toolbar