怎样开始用selenium进行自动化测试?

要开始使用Selenium进行自动化测试,你可以按照以下步骤进行:

  一、环境搭建

  安装Selenium库

  使用pip命令安装Selenium:pip install selenium

  下载并配置浏览器驱动程序

  Selenium支持多种浏览器,如Chrome、Firefox、Safari等。你需要从相应的浏览器官方网站上下载并安装对应的驱动程序,并确保其版本与Selenium库和浏览器版本兼容。

  设置开发环境

  你可以选择使用IDE(如PyCharm)或文本编辑器(如VS Code)来编写和运行Selenium脚本。确保你的开发环境已经配置了Python解释器,并且安装了Selenium库。

  二、编写测试脚本

  启动浏览器并创建实例

  使用WebDriver来启动浏览器并创建一个浏览器实例。例如,创建一个Chrome浏览器实例:

 from selenium import webdriver
  driver = webdriver.Chrome()

 

打开网页

  使用WebDriver的get()方法来打开一个网页:

driver.get("https://www.example.com")

定位网页元素

  Selenium提供了一系列方法来定位网页中的元素,如按ID、class、标签名、XPath、CSS选择器等。例如:

 # 按ID定位元素
  element = driver.find_element_by_id("element_id")
  # 按class定位元素
  element = driver.find_element_by_class_name("element_class")
  # 按标签名定位元素
  element = driver.find_element_by_tag_name("element_tag")
  # 使用XPath定位元素
  element = driver.find_element_by_xpath("//element_xpath")
  # 使用CSS选择器定位元素
  element = driver.find_element_by_css_selector(".element_class")

与元素交互

  定位到元素后,可以使用元素对象的方法来与元素进行交互,如点击、输入文本、获取元素文本等:

 # 点击元素
  element.click()
  # 输入文本到输入框
  element.send_keys("text")
  # 获取元素文本
  text = element.text
  # 获取元素属性值
  value = element.get_attribute("attribute_name")
  # 判断元素是否显示
  is_displayed = element.is_displayed()

执行操作序列

  Selenium提供了ActionChains类,可以执行一系列操作,如鼠标移动、按键操作等:

from selenium.webdriver.common.action_chains import ActionChains
  actions = ActionChains(driver)
  actions.move_to_element(element1).click().send_keys("text").perform()

处理弹窗和iframe

  Selenium提供了方法来处理弹窗和切换到iframe:

 # 处理弹窗
  alert = driver.switch_to.alert
  alert.accept() # 点击确认按钮
  alert.dismiss() # 点击取消按钮
  # 切换到iframe
  driver.switch_to.frame("iframe_name")
  driver.switch_to.default_content() # 切换回主文档

断言和验证

  在自动化测试中,通常需要对测试结果进行断言和验证。Selenium提供了一些方法来进行断言和验证,如assert和assertEqual:

 # 断言元素是否存在
  assert driver.find_element_by_id("element_id").is_displayed() # 判断元素是否显示
  # 验证页面标题是否正确
  assert "Page Title" in driver.title
  # 验证页面URL是否正确
  assert "https://www.example.com" in driver.current_url

等待元素加载

  在自动化测试中,有时需要等待元素加载完成。Selenium提供了隐式等待和显式等待的方法:

# 隐式等待,最多等待10秒
  driver.implicitly_wait(10)
  # 显式等待,等待元素出现后执行操作
  from selenium.webdriver.support.ui import WebDriverWait
  from selenium.webdriver.support import expected_conditions as EC
  from selenium.webdriver.common.by import By
  element = WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.ID, "element_id")))

截图和日志记录

  在测试过程中,截图和日志记录对于问题排查和测试报告非常重要:

 # 截图
  driver.save_screenshot("screenshot.png")
  # 日志记录
  import logging
  logging.basicConfig(level=logging.WARNING) # 设置日志级别
  logging.warning("Warning message") # 记录警告信息

三、运行和清理

  运行测试脚本

  在开发环境中运行你编写的Selenium测试脚本,观察测试结果。

  清理和退出

  在测试完成后,需要进行清理和退出操作,释放资源和关闭浏览器:

 # 清理操作,如删除所有cookies
  driver.delete_all_cookies()
  # 关闭浏览器
  driver.quit()

通过以上步骤,你就可以开始使用Selenium进行自动化测试了。记得在测试过程中不断调试和优化你的脚本,以提高测试的准确性和效率。

 

感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!有需要的小伙伴可以点击下方小卡片领取   

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值