selenium+python GUI自动化测试实现百度搜索

这里写自定义目录标题

参考

搭建测试环境,先下载浏览器对应的 WebDriver
https://blog.csdn.net/hanhanwanghaha/article/details/107658968

代码

#coding:utf-8
# 导包
from selenium import webdriver
import time

# 1.打开浏览器
driver = webdriver.Chrome()
time.sleep(2)

# 2.获取网址(百度)
driver.get("http://www.baidu.com")

# 3.找到输入框,通过id进行元素定位
search = driver.find_element_by_id("kw")

# 4.输入想要搜素的关键词--元素操作
search.send_keys("波吉")
time.sleep(2)

# 找到提交按钮,元素定位
button = driver.find_element_by_id("su")
# 点击提交按钮
button.click()
time.sleep(2) #强行等待了固定的 2 秒时间

# 读取搜素结果的标题
title = driver.title
print(title)


# 断言,验证页面效果,如果不加就会直接关了
assert "hh" in title
# 关闭浏览器
driver.quit()

解读

driver = webdriver.Chrome()

打开浏览器,后台还做了些额外的 WebService 绑定工作

search = driver.find_element_by_id("kw")

使用driver 的 find_element_by_id 方法,通过id定位到了搜索输入框,并将该搜索输入框命
名为 search;

search.send_keys("波吉")

通过send_keys方法向搜索输入框 search 输入了字符串“波吉”

Selenium 2.0 的工作原理

Selenium 2.0,又称 Selenium WebDriver,它利用的原理是:使用浏览器原生的 WebDriver
实现页面操作。
在这里插入图片描述

  • 当使用 Selenium2.0 启动浏览器 Web Browser 时,后台会同时启动基于 WebDriver Wire 协议的 Web Service 作为 Selenium 的 Remote Server,并将其与浏览器绑定。绑定完成后,Remote Server 就开始监听 Client 端的操作请求。
  • 执行测试时,测试用例会作为 Client 端,将需要执行的页面操作请求以 Http Request 的方式发送给 Remote Server。该 HTTP Request 的 body,是以 WebDriver Wire 协议规定的JSON 格式来描述需要浏览器执行的具体操作。
  • Remote Server 接收到请求后,会对请求进行解析,并将解析结果发给 WebDriver,由WebDriver 实际执行浏览器的操作。
  • WebDriver 可以看做是直接操作浏览器的原生组件(Native Component),所以搭建测试环境时,通常都需要先下载浏览器对应的 WebDriver。
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值