基于Selenium操作Web界面

目录

一、为什么需要操作Web界面

 二、模拟UI操作的原理

 三、基于Selenium实现

四、验证码的问题


一、为什么需要操作Web界面

 二、模拟UI操作的原理

 三、基于Selenium实现

代码

import time
from selenium import webdriver
# 如果要操作Windows元素,则使用库uiautomation, 如果要处理移动端,appium

# 第一步:先实例化webdriver对象,用于初始化浏览器操作
# 默认情况下,建议将chromedriver.exe等放在PATH环境变量的某个目录中,否则需要在参数executable_path中指定
driver = webdriver.Chrome()
driver = webdriver.Chrome(executable_path="C:/Tools/chromedriver.exe")
driver = webdriver.Firefox()
driver.maximize_window()
# 访问目标网站的页面地址
driver.get('http://192.168.112.188:8080/woniusales/')
time.sleep(2)
print(driver.title)
print(driver.page_source)
driver.refresh()
driver.back()
driver.forward()
driver.get_cookies()

# 第二步:利用DOM的识别机制,去识别和操作界面元素
driver.find_element_by_id('username').send_keys('admin')
time.sleep(1)
driver.find_element_by_id('password').send_keys('admin123')
time.sleep(1)
driver.find_element_by_xpath("//input[@id='verifycode']").send_keys('0000')
time.sleep(1)
driver.find_element_by_xpath("/html/body/div[4]/div/form/div[6]/button").click()
driver.find_element_by_css_selector("body > div.container > div > form > div:nth-child(6) > button").click()
time.sleep(3)

try:
    driver.find_element_by_id('barcode').send_keys('1234567890')
    print("登录成功")
except:
    print("登录失败")

if '请扫描商品条码' in driver.page_source:
    print("登录成功")
else:
    print("登录失败")

driver.close()




# UIAutomation识别Windows元素
import uiautomation

time.sleep(2)
calc = uiautomation.WindowControl(Name='计算器')
calc.ButtonControl(AutomationId='num1Button').Click()
calc.ButtonControl(AutomationId='plusButton').Click()
calc.ButtonControl(Name='五').Click()
calc.ButtonControl(AutomationId='equalButton').Click()

四、验证码的问题

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
基于Java和SeleniumWeb UI自动化测试框架是一种自动化测试工具,可以用于测试Web界面的功能和用户交互。以下是该框架的一些关键特性和优势。 1. 支持多浏览器和平台:这个框架可以在各种主流浏览器(如Chrome、Firefox、Safari等)和操作系统(如Windows、Mac、Linux等)上运行,确保网站在不同环境下的兼容性。 2. 灵活的对象识别:通过使用Selenium的定位策略(如ID、CSS选择器、XPath等),该框架可以准确地识别页面上的元素,从而使测试用例的编写更加简单和可靠。 3. 数据驱动测试:该框架支持数据驱动测试,可以从外部源(例如Excel、CSV等)中加载测试数据,并对每个数据组合执行相同的测试用例,从而提高测试效率和可重复性。 4. 测试报告和日志:这个框架提供了详细的测试报告和日志记录功能。测试报告会提供关键的测试执行结果,如成功率、失败率和跳过率,并展示每个用例的执行状态。日志记录则可以帮助开发人员在调试期间查找问题和进行错误分析。 5. 高可扩展性:该框架可以根据项目需要进行定制和扩展。开发人员可以编写自定义函数和库,以便进行特定的测试操作和验证。 总之,基于Java和SeleniumWeb UI自动化测试框架提供了一种可靠、高效和可扩展的方式来测试Web界面。它可以帮助团队快速检测和修复潜在的缺陷,提高软件质量和用户体验。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值