一、Selenium元素定位的重要性:
Web自动化测试的操作:获取UI页面的元素,对元素进行操作,得到实际结果,断言(返回结果与期望结果是否一致),返回自动化测试报告。
本文主要是利用Chrome浏览器的开发者工具进行元素定位。
元素定位在自动化测试中至关重要,如果一个页面上的元素不能被定位到,那后面的所有操作都不能正常进行测试了,接下来就来讲Webdriver提供的八种基本元素定位方法。
二、Selenium提供了8种定位方法:
- find_element_by_id() 通过Id属性来查找元素,id为唯一的
- find_element_by_name() 通过name属性来定位元素,name不唯一
- find_element_by_class_name() 通过class属性来定位元素
- find_element_by_tag_name() 通过tag name来定位元素
- find_element_by_link_text() 通过元素标签对之间的文本信息来定位元素
- find_element_by_partial_link_text() 对link定位的补充,取文本连接的一部分定位。
- find_element_by_xpath() 通过路径进行定位(绝对路径定位、元素属性定位,层级与属性结合、使用逻辑运算符)
- find_element_by_css_selector() 利用css为页面元素绑定属性
三、定位方法的用途:
第一步:以百度搜索框为例,打开百度网页;
第二步:通过元素定位搜索框;
第三步:在输入框输入“selenium Python”
第四步:通过元素定位【百度一下】按钮;
第五部:点击【百度一下】按钮;
第六步:查看搜索内容。
四、怎么查看元素?
第一步:打开Chrome浏览器,打开百度首页;
第二步:打开开发者选项
第三步:查看元素
第四步:通过具体的方法定位
五、八种方法的具体使用:
- 通过id定位【find_element_by_id()
- 通过name定位【find_element_by_name()
- 通过xpath定位【find_element_by_xpath()
六、附:简单元素操作方式:
- 清除元素内容:clear()
- 模拟按键输入:send_keys()
- 点击:click()
- 提交表单:submit()