Selenium3自动化测试实战-基于Python语言
文章平均质量分 90
书本为虫师编著。
1、自动化测试相关基础知识;2-10、从环境搭建,到WebDriver API介绍,再到单元测试框架的使用,循序渐进地介绍了自动化测试所用到知识,项目将知识串联;11、介绍使用Jenkins 配置自动化测试项目;12-14、介绍移动自动化测试工具 appium 的使用。
木景夕
这个作者很懒,什么都没留下…
展开
-
14.appium 测试实例
1. appium 应用测试介绍原生应用、移动 Web 应用和混合应用的测试实例。(1)原声应用测试原生应用是指由 Android 框架开发的应用,例如 Android 系统自带的通讯录为例,添加联系人。原创 2021-08-06 19:59:41 · 1051 阅读 · 0 评论 -
13.appium基础
accessibility_id:find_element_by_accessibility_id() Android的content-desc属性对应AccessibilityId定位方式。iOS的label和name属性都对应AccessibilityId定位方式,如果有则推荐使用。原创 2021-08-03 11:12:33 · 727 阅读 · 0 评论 -
12.appium的介绍与安装
appium 是一款移动自动化测试工具,目前在移动 UI 自动化领域占有重要地位,不仅支持 Android 和 iOS 两大平台,还支持多种编程,因而得到广泛的应用。1.appium介绍(1)移动应用类型移动应用类型主要分为以下几类:Native App:原生应用。Native App(原生应用)是为特定移动设备或平台开发的应用程序(如 Android、iOS 或 Windows)。 例如,iPhone 应用程序是用 Swift 写的,Android 应用程序是用 Java 写的。原生应用的可原创 2021-08-01 10:01:01 · 566 阅读 · 0 评论 -
11.Jenkins持续集成
最近几年,持续集成(Continuous Integration,CI)在项目开发中得到了广泛的推广和应用。什么是持续集成软件集成就是用一种较好的方式,把多种软件的功能集成到一个软件里,或者把软件的各部分组合在一起。当项目开发规模较小且对外部系统的依赖很小时,name软件集成不是问题。随着软件项目复杂度的增加,对集成和确保软件组件能够在一起工作提出了更高的要求:早集成、常集成。这样才能帮助项目开发者更早地发现项目风险和质量问题。持续集成的定义持续集成是一种软件开发实践,即团队开发成员经常集成他们的工原创 2021-07-28 17:01:36 · 382 阅读 · 0 评论 -
10.Selenium Grid
selenium 家族的 Selenium Grid—— 主要用于自动化测试的分布式执行。1. Selenium Grid 介绍Selenium Grid 分为两个版本:Grid1 和 Grid2,Grid2 的出现要晚于 Selenium 2 的发布。Grid 的两个版本的原理和基本工作方式完全相同,但是 Grid2 同时支持 Selenium 1 和 Selenium 2,并且在一些小的功能和易用性上进行了优化,例如指定了测试平台的方式等。Grid2 不再提供单独的 jar 包,其功能已经集成到原创 2021-07-25 16:58:20 · 569 阅读 · 0 评论 -
9.pytest 单元测试框架
pytest 是一个第三方单元测试框架,更加简单、灵活,而且提供了更加丰富的扩展,弥补了 unittest 在做 Web 自动化测试时的一些不足。1. pytest 简单例子pytest 支持 pip 安装,pip install pytest创建 test_sample.py 文件,代码如下:def inc(x): return x + 1def test_answer(): assert inc(3) == 5命令行窗口,进入到 test_sample.py 文件所在目录原创 2021-07-23 21:15:26 · 673 阅读 · 1 评论 -
8.Page Object
Page Object 是 UI 自动化测试项目开发实践的最佳设计模式之一,它的主要特点体现在对界面交互细节的封装上,使测试用例更专注于业务的操作,从而提高测试用例的可维护性。1. 认识 Page Object当为 Web 页面编写测试时,需要操作该 Web 页面上的元素。直接操作这些元素,这样代码十分脆弱,因为 UI 会经常变动。page 对象的一个基本经验法则是:凡是人能做的事,page 对象通过软件客户端都能做到。它提供一个易于编程的接口,并隐藏窗口中底层的部件。page 对象把在 GUI 控件原创 2021-07-20 15:17:39 · 333 阅读 · 1 评论 -
7.unittest扩展
1. HTML测试报告HTMLTestRunner 是 unittest 的一个扩展,它可以生成易于使用的 HTML 测试报告。可在Python3下运行的,地址:GitHub 地址:https://github.com/defnngj/HTMLTestRunner。(1)下载与安装打开上面的 GitHub 地址,克隆或下载整个项目。然后把 HTMLTestRunner.py 单独放到 Python 的安装目录下面,如 C:\Python37\Lib\。命令行窗口输入python,导入 HTMLTest原创 2021-07-20 09:10:34 · 329 阅读 · 1 评论 -
6.unittest单元测试框架
单元测试对技术要求很高,但用单元测试框架做单元测试却十分简单,而且单元测试框架不仅可以用来做单元测试,它还适用于不同类型的“自动化”测试。它提供了以下功能:提供测试用例组织和执行定义一条测试用例,灵活地控制测试用例的执行等提供丰富的断言方法进行功能测试时,测试用例需要有预期结果。当测试用例的执行结果与预期结果不一致时,判定测试用例失败。在自动化测试中,通过“断言”来判定测试用例执行成功与否。一般单元测试框架会提供丰富的断言方法。例如,判断相等/不相等、包含/不包含、True/False 等。提原创 2021-07-17 10:49:17 · 894 阅读 · 6 评论 -
5.自动化测试框架
1.基本概念(1)库库的英文单词是 Library,库是由代码集合成的一个产品,可供程序员调用。面向对象的代码组织形成的库叫类库,面向过程的代码组织形成的库叫函数库。WebDriver 就属于库的范畴,因为它提供了一组操作 Web 页面的类与方法,所以可以称它为 Web 自动化测试库。(2)框架框架的英文单词是 Framework,框架是为解决一个或一类问题而开发的产品,用户一般只需使用框架提供的类或函数,即可实现全部功能。unittest 框架主要用于测试用例的组织和执行,以及测试结果的生成。原创 2021-07-13 16:47:05 · 552 阅读 · 1 评论 -
4.WebDriver API
WebDriver API,它可用来操作浏览器元素的一些类和方法。1.从定位元素开始浏览器打开一个百度首页网页,上面有很多元素:输入框,按钮,文字链接,图片等元素。自动化测试要做的就是模拟鼠标和键盘来操作这些元素,如单击、输入、鼠标悬停等。而操作这些元素的前提是要定位它们。通过 Chrome 浏览器自带的开发者工具可以看到,页面元素都是由 HTML 代码组成的,它们之间有层级地组织起来,每个元素有不同的标签名和属性值,WebDriver 就是根据这些信息来定位元素的。WebDriver 提供了 8原创 2021-07-12 20:59:34 · 529 阅读 · 0 评论 -
3.Python基础
1.Python 哲学Python IDLE 的 Shell 模式下输入:import this,你会看到一段话,这就是 Python 之禅,也可以看作 Python 设计哲学。2.输出(1)打印python 用 print() 方法来打印信息。print("hello python")name = "tom"age = 27print("name is : " + name + ", age is : " + str(age))print("name is : %s, age is原创 2021-07-10 11:25:27 · 454 阅读 · 1 评论 -
2.测试环境搭建
1.安装 Python官网:https://www.python.org。选择合适的 Python版本,64 位系统选择64 版本,下载完成后会得到一个.exe 文件,双击进行安装即可。(Python 3.8.3),配置系统变量,Path 添加 Python安装 目录以及其目录下的 Script 文件夹目录(共2个路径,后者让我们正常使用 pip 命令)。命令行窗口输入 “python” 命令可执行即可。2.安装 Selenium命令行窗口,输入命令:pip install selenium 即可。原创 2021-07-09 17:33:38 · 256 阅读 · 1 评论 -
1.自动化测试基础
1.分层的自动化测试2.适合自动化测试的项目3.如何学习UI自动化测试4.Selenium简介5.appium简介1.分层的自动化测试测试金字塔,敏捷大师 Mike Cohn 基本观点:我们应该有更多低级别的单元测试,而不仅仅是通过用户界面运行端到端的高层测试。Martin Flowler 大师在测试金字塔基础上提出分层自动化测试的概念,添加“分层”二字区别“传统的”自动化测试。所谓传统的自动化测试我们可以理解为基于产品 UI 层的自动化测试,它是将黑盒功能测试转化为由程序或工具执行的一.原创 2021-07-08 10:35:17 · 311 阅读 · 1 评论