GUI自动化测试

本文介绍了GUI自动化测试的概念,适合自动化测试的项目条件,自动化测试的类型划分,并详细讲解了使用Python的selenium进行自动化测试,包括环境配置、元素定位、操作与断言、等待时间设置以及应对验证码的方法。此外,还列举了各种自动化测试的API和策略,为实际操作提供指导。
摘要由CSDN通过智能技术生成

什么是自动化测试
自动化测试,就是把人对软件的测试行为转化为由机器执行测试行为的一种实践,对于最常见的GUI自动化测试来讲,就是由自动化测试模拟之前需要人工在软件界面上的各种操作,并且自动验证其结果是否符合预期。

什么样的项目适合自动化
●需求稳定,不会频繁变更
●研发和维护周期长,需要频繁执行回归测试
●需要在多种平台上重复运行相同测试的场景
●性能、兼容性通过手工测试无法实现,或者手工测试成本太高
●被测软件的开发较为规范,能够保证系统的可测性
●测试人员具备一定的编程能力

自动化测试的类型划分
自动化测试有广义和狭义之分:
●广义:借助工具进行软件测试,都可以称为自动化测试
●狭义:主要指基于UI层的自动化测试

按照测试类型分:
●功能
●性能
●安全

按照测试阶段分:
●基于代码的单元测试
●集成阶段的接口测试
●系统测试阶段的UI自动化

自动化测试用例的设计原则
●自动化测试一般集中在需要重复测试的基本功能、基本业务流以及正向路径操作,不要将复杂的异常测试、复杂业务流程操作等加入到自动化测试用例中
●自动化测试用例尽量保持用例之间的独立性,最好不要形成依赖关系
●自动化测试如果对数据进行了修改,在测试结束后应尽量保持还原,避免对其他用例产生影响
●每个自动化测试用例只能验证一个功能点

webdriver的环境配置
●通过pip install selenium安装最新的selenium。selenium就是web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。
●下载对应的Chromedriver或geckodriver,并将driver放到环境变量的路径中
○Chromedriver下载镜像:ChromeDriver Mirror
○geckodriver下载镜像(firefox): geckodriver Mirror
●在pycharm中导入webdriver即可使用:from selenium import webdriver
自动化测试的love四步法
1元素定位 Locate
2元素操作 Operate
3结果断言 Verificate
4异常处理 Except

自动在百度搜索webdriver的例子

Python复制代码

from selenium import webdriver
import time

# 新建一个webdriver实例
driver = webdriver.Chrome()

# 打开百度首页
driver.get("https://www.baidu.com")
# 定位到id为kw的元素并点击它
driver.find_element_by_id('kw').click()
# 定位到id为kw的元素并清空里面的内容
driver.find_element_by_id('kw').clear()
# 定位id为kw的元素并输入webdriver
driver.find_element_by_id('kw').send_keys('webdriver')
# 定位到id为su的元素并点击它
driver.find_element_by_id('su').click()
# 休眠2秒
time.sleep(2)
# 关闭浏览器
driver.close()


页面基本结构
html页面的基本结构

HTML复制代码

<html>
  <head>html文档头部区域,页面不可见</head>
  <body>html文档内容部分,页面可见</body>
</html>

常见的页面元素
●容器型元素:div,form,table
●页面元素:a、img、input(button、text、file)、select、CheckBox、radio、textarea、submit

常用的元素定位的方式
●id
●name
●class name 
●tag name
●link text<a>
●partial link text<a>
●xpa

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值