多测师是一家拥有先进的教学理念,强大的师资团队,业内好评甚多的接口自动化测试培训机构!

17727591462

联系电话

您现在所在位置:接口自动化测试培训 > 新闻资讯

Selenium的三种弹窗处理方法-自动化测试

更新时间:2022-03-16 09:46:30 作者:多测师 浏览:952

  页面弹窗有 3 种类型:

  1.alert(警告信息)

  2.confirm(确认信息)

  3.prompt(提示输入)

  对于页面出现的 alert 弹窗,Selenium 提供如下方法:

Selenium的三种弹窗处理方法-自动化测试

  对应处理方式:

  1)alert(警告信息):WebDriver.switch_to.alert.accept();

  2)confirm(确认信息):

  · WebDriver.switch_to.alert.accept()

  · WebDriver.switch_to.alert.dismiss()

  3)prompt(提示输入):WebDriver.switch_to.alert.send_keys();

  alert(警告信息)弹出框

  alert(警告信息)弹出框,目的是提示通知信息,只需要用户看完点击确认即可。

  from selenium import webdriver

  from time import sleep

  driver = webdriver.Chrome() # 打开浏览器

  driver.get("http://sahitest.com/demo/alertTest.htm") # 跳转至测试页面

  sleep(1)

  element = driver.find_element_by_name("b1") # 定位

  element.click() # 点击

  sleep(1)

  alert = driver.switch_to.alert # 切换到弹窗

  print(alert.text) # 打印弹窗显示的信息:Alert Message

  alert.accept() # 接受

  sleep(2)

  driver.quit() # 关闭浏览器

  confirm(确认信息)弹出框

  confirm(确认信息)弹出框,主要是让用户来确定是否要执行某个操作。比如,淘宝,京东等,删除订单是弹出此类弹出,让用户确定是否删除,避免用户误操作。

  confirm(确认信息)弹出框提供两种选择,“确认” 或者 “取消”。只需要选择其中一个即可:

  确认:WebDriver.switch_to.alert.accept()

  取消:WebDriver.switch_to.alert.dismiss()

  from selenium import webdriver

  from time import sleep

  driver = webdriver.Chrome() # 打开浏览器

  driver.get("http://sahitest.com/demo/confirmTest.htm") # 跳转至测试页面

  sleep(1)

  element = driver.find_element_by_name("b1") # 定位

  # 1、接受

  element.click() # 点击

  sleep(1)

  alert = driver.switch_to.alert # 切换到弹窗

  print(alert.text) # 打印弹窗显示的信息:Alert Message

  alert.accept() # 接受

  sleep(2)

  # 2、取消

  element.click() # 点击

  sleep(1)

  alert = driver.switch_to.alert # 切换到弹窗

  print(alert.text) # 打印弹窗显示的信息:

  alert.dismiss()

  sleep(2)

  driver.quit() # 关闭浏览器

  prompt(提示输入)弹出框

  prompt(提示输入)弹出框,目的是需要用户先输入信息,再做提交。Selenium 提供输入信息的方法是:

  WebDriver.switch_to.alert.send_keys()

  from selenium import webdriver

  from time import sleep

  driver = webdriver.Chrome() # 打开浏览器

  driver.get("http://sahitest.com/demo/promptTest.htm") # 跳转至测试页面

  sleep(1)

  element = driver.find_element_by_name("b1") # 定位

  # 1、接受

  element.click() # 点击

  sleep(1)

  alert = driver.switch_to.alert # 切换到弹窗

  print(alert.text) # 打印弹窗显示的信息:Alert Message

  alert.send_keys("自动化测试") # 输入内容

  sleep(1)

  alert.accept() # 接受

  sleep(2)

  driver.quit() # 关闭浏览器

  注意 : 有些弹窗并非浏览器的 alert 窗口,而是 html元素,对于这种对话框,只需要通过之前介绍的选择器选中,并进行相应的操作即可。

  以上内容为大家介绍了自动化测试中的Selenium的三种弹窗处理方法,本文由多测师亲自撰写,希望对大家有所帮助。了解更多自动化测试相关知识:https://www.aichudan.com/xwzx/

联系电话

17727591462

返回顶部