还在为如何编写Web自动化测试用例而烦恼嘛?资深测试工程师手把手教你Selenium 测试用例编写
编写Selenium测试用例就是模拟用户在浏览器上的一系列操作,通过脚本来完成自动化测试。
编写测试用例的优势:
开源,免费。
支持多种浏览器 IE,Firefox,Chrome,Safari。
支持多平台 Windows,Linux,Mac。
支持多语言 Python,Java,C#。
对 Web 支持良好。
简单,灵活。
支持分布式测试用例执行。
引入依赖
引入依赖是为了调用 webdriver 中的方法来与浏览器进行交互以实现操作步骤。
Python版本
from selenium import webdriver
测试用例的流程
测试用例是为了实施测试从而向被测试的系统提供的一组集合,这组集合包含:测试环境、操作步骤、测试数据、预期结果等。
注意:一条测试用例的最终结果只有一个:成功或者失败。
三大核心要素为 :标题 、步骤 、预期结果
标题:是对测试用例的描述,标题应该清楚的表达测试用例的内容
步骤:对测试执行过程进行描述
预期结果:提供测试执行的预期结果,预期结果一般是根据需求得出,如果实际结果和预期结果一致则测试通过,反之失败。
实战演练
首先是在代码的最上面导入了 Selenium 的包,其次是测试方法命名、测试步骤、断言。测试用例内容是要断言打开百度页面所展现的内容与所期望的值是否相等。
Python版本
from selenium import webdriver
# 测试的标题即 test_search
def test_search():
driver = webdriver.Chrome()
# 测试的步骤
driver.get('https://www.baidu.com')
search = driver.find_element_by_id('su').get_attribute('value')
# 断言预期结果
assert search == "百度"
这里要断言打开百度页面所展现的内容与所期望的值是否相等。因为实际获取到的内容应该是百度一下而不是百度,所以断言错误。
FAILED [100%]
test_demo.py:3 (test_search)
百度一下 != 百度
Expected :百度
Actual :百度一下
<Click to see difference>
def test_search():
driver = webdriver.Chrome()
driver.get('https://www.baidu.com')
search = driver.find_element_by_id('su').get_attribute('value')
> assert search == "百度"
E AssertionError: assert '百度一下' == '百度'
test_demo.py:9: AssertionError
最后: 可以在公众号:伤心的辣条 ! 自行领取一份216页软件测试工程师面试宝典文档资料【免费的】。以及相对应的视频学习教程免费分享!,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。
我推荐一个【Python自动化测试交流群:746506216】,大家可以一起探讨交流软件测试,共同学习软件测试技术、面试等软件测试方方面面,助你快速进阶Python自动化测试/测试开发,走向高薪之路。
喜欢软件测试的小伙伴们,如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一 键三连哦!
相关文章
- 我们正在招聘java工程师,想来美团工作吗?
- 算法工程师<机器学习基础>
- 【学习总结】测试开发工程师面试指南-个人简历
- 用etckeeper来解救运维工程师
- 来自Google资深工程师的API设计最佳实践
- Atitit 前端测试最简化内嵌web服务器 php 与node.js 目录 1.1. php内置Web Server1 1.2. Node的2 Node的比较麻烦些。。Php更加简单
- Atitit 搜索工程师的知识点体系总结 目录 1.1. 理论类 索引 与查询1 1.2. 类库类1 1.3. 关联知识类1 1.4. 其他1 2. Ref2 2.1. Atitit 文
- DayDayUp:计算机技术与软件专业技术资格证书之《系统集成项目管理工程师》课程讲解之十大知识领域之4核心—项目成本管理
- 软件技术专业-就业提示(二、测试工程师)
- 全干工程师神器 - Jmeter 08 - 如何利用Jmeter进行接口测试
- 软件测试工程师是低人一等还是一金难求--请看微软观点
- 从第1个脚本到全栈自动化测试工程师,那些吊死在一家公司呆了 10 年的程序员,最后都怎么样了?
- 青春饭:这就是现实!35岁之后软件测试工程师靠什么养家?
- 软件测试工程师必备干货,移动应用测试(上)
- 单元测试是什么?7年测试工程师浅谈一下
- 面了一个4年经验的测试工程师,自动化都不会也要15k,我真是醉了...
- 验证码是自动化的天敌?看看3年字节经验的测试工程师是怎么解决的
- 测试开发是什么?什么是测试开发工程师?
- 包装成1年工作经验的测试工程师,我给他的面试前的建议如下