python自动化测试

Posted 测试baby

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python自动化测试相关的知识,希望对你有一定的参考价值。

在这里插入图片描述

1、软件测试

根据项目流程阶段划分软件测试:

在这里插入图片描述

上图是一个典型“V”模型软件开发流程:
单元测试:单元测试是对程序中的单个子程序或具有独立功能的代码段进行测试的过程;
集成测试:集成测试是单元测试的基础上,将通过单元模块组装成系统或子系统,再进行测试,重点是检查模块之间的接口是否正确;
系统测试:系统测试是针对整个产品系统进行的测试,验证系统是否满足了需求规格的定义,以及软件系统的正确性和性能等是否满足其规约所指定的要求;
验收测试:验收测试是部署软件之前的最后一个测试操作。验收测试的目的是确保软件准备就绪,向软件购买都展示该软件系统满足其用户的需求;
当然,从对软件测试工作的自动化程度可以划分为手工测试与自动化测试。

手工测试:
手工测试就是由人去一个一个的去执行测试用例,通过键盘鼠标等输入一些参数,查看返回结果是否符合预期结果。

自动化测试:
自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程。通常,在设计了测试用例并通过评审之后,由测试人员根据测试用例中描述的规程一步步执行测试,得到实际结果与期望结果的比较。在此过程中,为了节省人力、时间或硬件资源,提高测试效率。

2、自动化测试常用工具

自动化测试的概念有广义与狭义之分;广义上来讲所有借助工具来进行软件测试都可以称为自动化测试;狭义上来讲,主要指基于 UI 层的自动化测试;除此之外还有基代码编写阶段的单元自动化测试,基本集成测试阶段的接口自动化测试。
目前市面上的自动化测试工具非常多,下面几款是比较常见的自动化测试工具。
QTP

QTP 是 HP Quick Test Professional software 的简称,
是一种企业级的自动测试工具。
提供了强大易用的录制回放功能。
支持 B/S 与 C/S 两种架构的软件测试。
是目前主流的自动化测试工具。

Robot Framework

Robot Framework 是一款 Python 编写的功能自动化测试框架。
具备良好的可扩展性,支持关键字驱动,
可以同时测试多种类型的客户端或者接口,
可以进行分布式测试执行。

Selenium

Selenium 是一个用于 Web 应用程序测试的工具,
支持多平台、多浏览、多语言去实现自动化测试。
目前在 web 自动化领域应用越来越广泛

3、python编写第一个自动化脚本

第一个自动化测试Hello World

#coding=utf-8
from selenium import webdriver
# 导入 Selenium 的 webdriver 包,
# 只有导入 webdriver 包我们才能使用 webdriver API 进行自动化脚本的开发
driver = webdriver.Firefox()
# 将控制的 webdriver 的 Firefox 赋值给 browser;
# 获得了浏览器对象才可以启动浏览器,打开网址等操作
# 当然也可以调用 Ie 或 Chrome ,不过要先安装相关的浏览器驱动才行
driver.get("http://www.baidu.com")
# 打开百度页面
driver.find_element_by_id("kw").send_keys("python自动化测试")
# 通过键盘输入方法send_keys()向百度输入框里输入python自动化测试
driver.find_element_by_id("su").click()
# 百度搜索按钮点击
driver.quit()
# 退出并关闭窗口的每一个相关的驱动程序。

浏览器驱动:

WebDriver 支持 Firefox (FirefoxDriver)、IE (InternetExplorerDriver)、Opera (OperaDriver) 和 Chrome(ChromeDriver)等浏览器,使用具体的浏览器需要使用对应的浏览器驱动。下载对应的驱动,放入python安装目录即可,注意版本问题。

# 火狐浏览器
driver = webdriver.Firefox()
# IE浏览器
driver = webdriver.Ie()
# 谷歌浏览器
driver = webdriver.Chrome()

4、java编写第一个自动化脚本

import org.openqa.Selenium.By;
import org.openqa.Selenium.WebDriver;
import org.openqa.Selenium.WebElement;
import org.openqa.Selenium.firefox.*;
public static void main(String[] args) {
WebDriver driver = new FirefoxDriver();
driver.get("http://www.baidu.com/");
WebElement txtbox = driver.findElement(By.name("kw"));
txtbox.sendKeys("java自动化测试");
WebElement btn = driver.findElement(By.id("su"));
btn.click();
driver.close();
}

4、C#编写第一个自动化脚本

using OpenQA.Selenium;
using OpenQA.Selenium.Firefox;
using OpenQA.Selenium.Support.UI;
class Baidu
{
static void Main(string[] args)
{
driver = new FirefoxDriver();
url = "http://www.baidu.com/";
driver.Navigate().GoToUrl(url)
var searchBox = driver.FindElementById("kw");
searchBox.SendKeys("C#自动化");
ar btnClick = driver.FindElementById("su");
btnClick.Click();
driver.Quit();
}
}

在这里插入图片描述

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你

关注我的微信公众号【伤心的辣条】免费获取~

送上一句话:

世界的模样取决于你凝视它的目光,自己的价值取决于你的追求和心态,一切美好的愿望,不在等待中拥有,而是在奋斗中争取。

我的学习交流群:902061117 群里有技术大牛一起交流分享~

如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!

好文推荐:

转行面试,跳槽面试,软件测试人员都必须知道的这几种面试技巧!

测试岗反复跳槽,跳着跳着就跳没了…

软件测试人员该学习 Python 的七个理由

App公共测试用例梳理

面试经:一线城市搬砖!又面软件测试岗,5000就知足了…

35岁之后软件测试工程师靠什么养家?我能继续做测试!

以上是关于python自动化测试的主要内容,如果未能解决你的问题,请参考以下文章

在 Python 多处理进程中运行较慢的 OpenCV 代码片段

python Python测试片段

python常用代码

Python 自动化 - 浏览器chrome打开F12开发者工具自动Paused in debugger调试导致无法查看网站资源问题原因及解决方法,javascript反调试问题处理实例演示(代码片段

python Cacher的测试片段

30 段 Python 实用代码