【如何学习Python自动化测试】—— 自动化测试环境搭建

简介: 【如何学习Python自动化测试】—— 自动化测试环境搭建

1、 自动化测试环境搭建

1.1 为什么选择 Python

     什么是python,引用python官方的说法就是“一种解释型的、面向对象、带有励志语义的高级程序设计语言”,对于很多测试人员来说,这段话包含了很多术语,而测试人员大多是希望利用编程语言来帮助他实现自动化的测试,而不需要花费大量的精力来学习一门编程语言。

     Python在自动化测试中有以下优势:

  1. 简洁易学:Python的语法简单明了,易于学习和使用,编写测试用例时可以更快速地完成任务。
  2. 库丰富:Python有丰富的开源库和工具,可以快速实现测试框架、数据驱动等常见测试需求。比如:Selenium、Robot Framework、Pytest等。
  3. 跨平台支持:Python可以在各种操作系统上运行,包括Windows、Linux、Mac OS等。
  4. 维护方便:Python代码的可读性高,更容易维护和调试,能够快速定位和解决问题。
  5. 集成能力强:Python可以与其他编程语言和工具进行很好的集成,例如:Java、C++、Jenkins等。

     综上所述,Python在自动化测试中是一种非常流行的语言选择,因为它能够提供快速、可靠、灵活的解决方案。

1.2 Selenium 简介

     Selenium 是 Thought Works 公司开发的一套基于 web 应用的自动化测试工具,直接运行在浏览器中,模拟用户操作。它可以被用于单元测试、集成测试、回归测试、系统测试、冒烟测试、验收测试,并且可以运行在各种浏览器和操作系统上。

     Selenium支持多种编程语言,包括Java,C#,Python,Ruby和JavaScript,因此可以在不同的操作系统和浏览器上运行。它也可以与许多测试框架和工具集成,例如JUnit,TestNG,Maven和Jenkins。

     Selenium有三个主要组成部分:Selenium IDE,Selenium WebDriver和Selenium Grid。Selenium IDE是一个浏览器插件,用于记录和回放测试脚本。Selenium WebDriver是一个更高级的API,它允许测试人员编写更灵活和复杂的测试脚本,并且可以在不同的浏览器中运行。Selenium Grid是一个用于分布式测试的服务器,可以同时运行多个浏览器实例和测试脚本。

     Selenium分为1.0和2.0两个大版本,1.0 主要包含 ide、core和rc三大部分。2.0 集成了 1.0 的功能,同时集成了 webdriver,WebDriver 旨在提供一个更简单,更简洁的编程接口以及解决一些 Selenium-RC API的限制。Selenium-Webdriver 更好的支持页面本身不重新加载而页面的元素改变的动态网页WebDriver 的目标是提供一个良好设计的面向对象的API,提供了对于现代先进web 应用程序测试问题的改进支持。

Selenium 主要结构:

     IDE : 可以通过IDE 完成测试过程的录制和回放。主要用来给初学者了解selenium,但不适合直接作为日常自动化的测试.

     Grid : 是 selenium 部署、测试及执行.

     RC : selenium Remote Control,一个代理与控制器.

     Core : selenium 的测试机制核心部分,包含测试用例集的执行,断言,由is代码组成,支持跨平台运行。

Webdriver结构:

selenium 分为四层:

     Selenium test: 业务脚本层,支持各种编程语言脚本 java、C#、Ruby、python、js等。

     Webdriver: 实现模拟用户在浏览器中的各种操作。

     浏览器: 几乎支持所有浏览器。

     业务层: 即被测对象。

Selenium 的目录结构:

Selenium 异常处理部分:

1.3 Python 安装

搭建 python 环境:

1、 下载 python

     Python最新源码,二进制文档,新闻资讯等可以在Python的官网查看到:

     Python官网:https://www.python.org/

     你可以在以下链接中下载 Python 的文档,你可以下载 HTML、PDF 和 PostScript 等格式的文档。

     Python文档下载地址:https://www.python.org/doc/

2、 下载 python 的基础包工具 setuptools

     https://pypi.python.org/pypi/setuptools

3、 下载 python 安装包管理工具 pip

     https://pypi.python.org/pypi/pip

安装步骤:

     Python 安装,下载自己系统对应的 python 版本,32 位的下载对应 32位安装包,64 位下载对应版本。双击安装程序。默认安装路径为 c:\python27。 Python 安装完成后,需要将 python 的安装路径加入到 path 变量中。

检查 python 安装是否成功:

     在 cmd 中执行 python,如果出现下列界面,则表示 python 安装成功。

     Setuptools 的安装相同,默认会找到 python 的安装路径,将安装在c:\python27\Lib\site-packages

     将 Setuptools 文件包迚行解压,解压到 D:\setuptools-36.2.7

     打开 cmd,执行 cd D:\setuptools-36.2.7

     执行 python setup.py install 进行安装。

     1、 安装 pip,将 pip 的包解压,解压后通过 cmd 进入该目录,执行 python setup.py install.

     例如:

           pip 安装包在 D:\下,解压后为 D:\pip-9.0.1

           打开 cmd,执行 cd D:\pip-9.0.1,再执行 python setup.py install 进行安装。

     第二种安装方式为:

           打开 cmd 窗口,执行 easy_install pip。

1.4 selenium 环境搭建

     selenium 下载:https://pypi.python.org/pypi/selenium

     selenium 安装,将安装包下载后,解压,解压完成后,通过 cmd 进入解压后的目录,执行 python setup.py install。

     如果你的机器没有联网,则使用上述方法,如果已经联网,则可以使用 pip install selenium。

检查 selenium 是否安装成功:

执行上述命令后,如果已经安装成功,则会打开一个 firefox 浏览器界面。

命令解释:

     Python 进入 python 开发界面。

     from selenium import webdriver:加载 selenium 中的 webdriver

     driver=webdriver.Firefox():打开一个 firefox 浏览器,并将操作浏览器的句柄赋 给 driver 变量。

     driver.get(‘https://www.baidu.com’):打开浏览器后,在浏览器中输入百度 url 地址,转到百度页面。


     下篇介绍 webdriver 对浏览器操作的 API。


相关文章
|
2天前
|
机器学习/深度学习 人工智能 算法
探索软件测试的未来:AI与自动化的融合
【6月更文挑战第3天】随着人工智能和自动化技术的不断进步,软件测试领域正经历着一场革命。本文将探讨这两种技术如何相互补充,提高测试效率和质量,以及它们对未来软件测试实践的潜在影响。
|
3天前
|
测试技术 Python
【Python自动化测试】:Unittest单元测试与HTMLTestRunner自动生成测试用例的好帮手
【Python自动化测试】:Unittest单元测试与HTMLTestRunner自动生成测试用例的好帮手
|
3天前
|
测试技术
软件测试项目式学习三(软件测试原则与基本流程与实际测试用例)
软件测试项目式学习三(软件测试原则与基本流程与实际测试用例)
|
3天前
|
测试技术 程序员 开发者
软件测试项目式学习一(认识软件生命周期与开发模型及软件质量)
软件测试项目式学习一(认识软件生命周期与开发模型及软件质量)
|
3天前
|
安全 测试技术
软件测试项目式学习二(认识软件测试及软件测试分类与案例分析)
软件测试项目式学习二(认识软件测试及软件测试分类与案例分析)
11 1
|
3天前
|
机器学习/深度学习 人工智能 算法
探索软件测试的新时代:AI驱动的自动化
【6月更文挑战第4天】随着人工智能技术的不断进步,软件测试领域正经历着一场革命。本文将探讨AI如何改变传统的软件测试方法,提高测试效率和准确性,以及这一趋势对测试工程师未来技能要求的影响。
16 6
|
3天前
|
敏捷开发 数据管理 测试技术
软件测试中的自动化策略与实践
【6月更文挑战第4天】本文深入探讨了在现代软件开发生命周期中,自动化测试的重要性及其实施策略。通过分析自动化测试的优势、挑战以及最佳实践,旨在为读者提供一套全面的自动化测试解决方案,以提升软件质量并加速交付速度。
|
3天前
|
XML Web App开发 Java
【软件测试】关于Web自动化测试
【软件测试】关于Web自动化测试
|
3天前
|
存储 数据管理 测试技术
构建Python构建自动化测试框架(原理与实践)
当谈到软件质量保证时,自动化测试是一个不可或缺的步骤。Python作为一种简单易学的编程语言,具有丰富的测试框架和库,使得构建自动化测试框架变得相对简单。本文将介绍如何使用Python构建自动化测试框架,包括选择合适的测试框架、编写测试用例、执行测试和生成报告等方面。
构建Python构建自动化测试框架(原理与实践)
|
4天前
|
Java 测试技术 Web App开发
《手把手教你》系列技巧篇(六十二)-java+ selenium自动化测试-RemoteWebDriver让你的代码与测试分离(远程测试)
【6月更文挑战第3天】本文介绍了在没有本地浏览器的情况下,如何使用RemoteWebDriver进行远程自动化测试。RemoteWebDriver分为客户端和服务端,客户端运行测试代码,服务端启动服务。服务端需要安装JDK、浏览器和对应的WebDriver,并启动selenium-server-standalone.jar。客户端通过URL连接到服务端,并指定预期的浏览器类型。这样,客户端的测试代码就能远程控制服务端的浏览器执行自动化测试。RemoteWebDriver的优点包括跨平台和浏览器测试、提高测试稳定性以及使测试环境和执行代码的机器分离。
22 3