第二讲: 页面元素定位、操作

一、页面元素操作

web自动化测试其实就是通过模拟手工测试,我们现在要通过代码来实现测试,首先我们要知道要操作的对象在哪?然后再对其页面元素对象做什么样的操作?也就引出下面两个概念:

        1、页面元素定位

        2、selenium API (如:点击、选择、输入文本内容等)

二、页面8元素定位方式

        1、id:在一个页面具有唯一性

        2、name :常用来定位输入框

        3、class_name:也比较常用,注意点:它的值中间如果有空格,是不能用的

        4、link_text:文本链接定位

        5、partial_link_text:通过部分文本内容链接定位

        6、tag_name:

        7、xpath:xpath表达式,后续主要通过这个方法来定位元素

        8、css_selector:css表达式,与xpath表达式只需熟练掌握一种即可。推荐使用xpath

三、小案例:通过百度搜索“瓜牛强强”文本

具体如何定位?步骤:

1、打开浏览器,百度网页,按下F12或者在设置中打开开发者工具

 2、通过做左上角的箭头,定位到“百度输入框”,获取该元素的一些属性信息,如:id="kw"

 3、用同样的方法,定位到“百度一下”按钮的属性信息id="su"

 4、上代码

# 导入包
import time
from selenium import webdriver

# 打开浏览器
driver = webdriver.Chrome()
# 浏览器最大化
driver.maximize_window()
# 打开一个网页
driver.get("http://www.baidu.com")# 打印当前的浏览器地址
# 通过id找到需要操作的元素(百度输入框):元素定位
baidu_Input_box = driver.find_element('id','kw')
# 为了看到效果可以加个时间等待
time.sleep(1)
# 对百度输入框,输入“瓜牛强强”
baidu_Input_box.send_keys("瓜牛强强")
# 通过id找到需要操作的元素(百度一下按钮):元素定位
baidu_button = driver.find_element('id','su')
# 点击百度按钮
baidu_button.click()
time.sleep(2)
# 关闭整个浏览器,并且关闭驱动chromedriver
driver.quit()

To be continue,点个关注,持续更新。。。

原文地址:https://www.cnblogs.com/lingqiang0605/p/15056093.html