《自拍教程》Python自动化测试学习思路

前提:熟悉测试业务及流程

任何Python自动化测试的前提,都是必须先熟悉实际测试业务。
任何脱离实际测试业务的自动化都是噱头且无实际意义!
测试的基本流程基本是:
测试需求分析,测试用例设计与评审,测试用例执行,报bug,整理测试报告。
测试用例设计与评审是熟悉软件产品需求的重要过程,
可以更深入地了解软件产品的具体需求。

先掌握手动执行用例

用例设计及评审结束后,先学会手动执行测试用例,
通过手动执行用例,也可以更好的了解软件产品的具体需求,
并学会总结归纳不同的测试类型的用例。
比如性能测试用例,稳定性测试用例,接口测试用例等。

总结测试技术

哪些是需要用到其他辅助性工具,
比如命令行工具软件(命令),外部设备,外部关键数据等。

做到把Python运用到实际测试的每一个环节

Python的优势是数据处理,需要将Python脚本贯穿于测试的所有过程,
包括测试环境搭建阶段,测试用例设计阶段,测试用例执行阶段,
测试用例结果分析阶段,Bug处理,测试报告等环节。
都可以利用Python来处理,来提供测试效率。

做到半自动化执行

在执行某些手动测试用例的过程中,你要学会总结归纳,包括:

table.dataframe {
font-family: verdana,arial,sans-serif;
font-size:13px;
color:#333333;
border-width: 1px;
border-color: #999999;
border-collapse: collapse;
width:80%;
white-space:nowrap;
}
table.dataframe th {
background-color:#c3dde0;
border-width: 1px;
padding: 8px;
border-style: solid;
border-color: #a9c6c9;
text-align:center;
}
table.dataframe tr {
background-color:whit;
}
table.dataframe td {
border-width: 1px;
padding: 8px;
border-style: solid;
border-color: #a9c6c9;
text-align:left;
white-space:nowrap;

}

阶段 总结提升方向
第一阶段 哪些测试环境准备(环境准备,数据准备)是可以用Python代码实现的。
第二阶段 哪些测试用例的执行是重复多次执行,或者长时间执行,
是可以用Python代码实现此类操作的。
第三阶段 哪些测试结果,是可以用Python代码来进行数据分析的,
再最后人为判断测试结果是Pass, Fail。
第四阶段 以上这些Python代码块,是不是经常用,
能否做一个测试工具(.exe)分享给周围的测试同学或研发同学。

以上学习提示过程中,也可以由易到难地一步一步来尝试实现之.

table.dataframe {
font-family: verdana,arial,sans-serif;
font-size:13px;
color:#333333;
border-width: 1px;
border-color: #999999;
border-collapse: collapse;
width:80%;
white-space:nowrap;
}
table.dataframe th {
background-color:#c3dde0;
border-width: 1px;
padding: 8px;
border-style: solid;
border-color: #a9c6c9;
text-align:center;
}
table.dataframe tr {
background-color:whit;
}
table.dataframe td {
border-width: 1px;
padding: 8px;
border-style: solid;
border-color: #a9c6c9;
text-align:left;
white-space:nowrap;

}

实现方式及其难易程度
容易 可以先学会写脚本(Python批处理脚本)形式来实现,
中等 慢慢再考虑写成面向过程(Python函数)形式来实现,
较难 最后再考虑能否写成面向对象(Python类)的形式实现。
尝试全自动测试

当你有了一定的Python基础,你学会了编写函数,学会了编写类 ,
也做过一些小型Python项目(比如学会了写一些.exe的工具),
你也可以将很多手动执行的测试用例转换成Python代码文件来一条条执行了。

你就会碰到以下瓶颈:

table.dataframe {
font-family: verdana,arial,sans-serif;
font-size:13px;
color:#333333;
border-width: 1px;
border-color: #999999;
border-collapse: collapse;
width:80%;
white-space:nowrap;
}
table.dataframe th {
background-color:#c3dde0;
border-width: 1px;
padding: 8px;
border-style: solid;
border-color: #a9c6c9;
text-align:center;
}
table.dataframe tr {
background-color:whit;
}
table.dataframe td {
border-width: 1px;
padding: 8px;
border-style: solid;
border-color: #a9c6c9;
text-align:left;
white-space:nowrap;

}

序号 可能碰到的瓶颈
1 你目前的所谓的自动化用例(Python脚本),只能一次执行一条用例
2 每次测试完后,你可能都需要重新在审核下测试结果,
因为可能有些测试结果,你的Python脚本还没做到自动判断的程度。
3 由于你是一次一条地执行,所以整体测试报告还是要你自己去整理,
比如pass/fail/block了多少条,占比多少等,无法自动生成测试报告!
4 测试用例脚本维护太麻烦了,修改一处,可能其他的脚本也都需要修改。
5 测试用例脚本无法统一管理,东一处西一处。

那你就可以尝试学习某个框架了,框架主要是更规范地执行测试用例。

框架具有:

table.dataframe {
font-family: verdana,arial,sans-serif;
font-size:13px;
color:#333333;
border-width: 1px;
border-color: #999999;
border-collapse: collapse;
width:80%;
white-space:nowrap;
}
table.dataframe th {
background-color:#c3dde0;
border-width: 1px;
padding: 8px;
border-style: solid;
border-color: #a9c6c9;
text-align:center;
}
table.dataframe tr {
background-color:whit;
}
table.dataframe td {
border-width: 1px;
padding: 8px;
border-style: solid;
border-color: #a9c6c9;
text-align:left;
white-space:nowrap;

}

框架的优势
1 测试用例自动执行的功能,上一条执行完毕后,自动执行下一条。
2 测试结果自动化生成并生成测试报告的功能
3 只提供了部分User Interface,交互界面会更加方便,
比如你只需编辑关键字,
或者只需要编辑某些数据文件(或者配置文件,xml,txt,excel文件等),
即可实现全部关联修改。
4 。。。。。。益处多多!

有框架,则你离全自动化测试又进了一步。

更多更好的原创文章,请到:www.zipython.com

原文链接:https://www.zipython.com/#/detail?id=e43c2cbe9356437c81d7a88f0b3fb986

原文地址:https://www.cnblogs.com/zipython/p/12335152.html

时间: 2024-11-09 02:01:09

《自拍教程》Python自动化测试学习思路的相关文章

python自动化测试学习笔记-2-字典、元组、字符串方法

一.字典 Python字典是另一种可变容器模型,且可存储任意类型对象,如字符串.数字.元组等其他容器模型. 字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 ,格式如下所示: f = {key1 : value1, key2 : value2 } 键必须是唯一的,但值则不必. 值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组. d={'name':'pei','age':12,'sex':'女','addr':'昌

python自动化测试学习笔记-6urllib模块&request模块

python3的urllib 模块提供了获取页面的功能. urllib.request.urlopen(url, data=None, [timeout, ]*, cafile=None, capath=None, cadefault=False, context=None) -         url:  需要打开的网址 -         data:Post提交的数据 -         timeout:设置网站的访问超时时间 直接用urllib.request模块的urlopen()获取页

《自拍教程50》Python_adb随机按键模拟2小时

Android终端(车载,手机)等, 需要考虑进行随意进行各类按键(车载方向盘按键,手机硬按键)的操作, 测试系统对按键事件的响应稳定性,一般测试2小时. 准备阶段 一般是用adb shell input keyevent + keyCode 来模拟按键事件, 比如adb shell input keyevent 24 可以模拟"音量加键", 以下是比较常用的几个按键的键值表. table th:first-of-type { width: 100px; } KeyCode 释义 3

《自拍教程53》Python_adb运行tcpdump工具

本篇文章与上一篇:Python_adb运行shell脚本类似, 上一篇主要的技术点是讲shell等文本文件,"隐藏"在Python代码里; 本篇文章主要是讲,如何将tcpdump这类二进制可执行文件, "隐藏"到Python代码里去. ::: story Android手机具备在线功能的应用程序,如果出现App无法连接网络, 或者网络异常等问题,开发一般需要测试同学抓包; 还有比如Android手机 流媒体协议(HTTP,HTTP Live, RTSP)测试等,开发

《自拍教程56》Python_批量安装卸载1000个apk

接上2篇案例:Python_批量下载1000个apk, Python_批量验证1000个apk, 都下载完了, 也验证了下载文件的版本号和MD5后,就要开始批量安装了, 然后开始尝试运行打开这个app, 做最基本的功能检点,最后就要考虑卸载App了. 本篇内容主要介绍如何用Python来批量实现安装apk,卸载apk. 备注: 一个手机不可能同时安装1000个apk,需要考虑每50-100个作为一组,进行安装,验证后卸载测试. 准备阶段 adb install -d -r XXX.apk 是安装

移动端自动化测试Appium从入门到项目实战Python版 学习 教程

移动端自动化测试Appium从入门到项目实战Python版 学习 教程 原文地址:https://www.cnblogs.com/itye/p/11679036.html

Python实战:Python爬虫学习教程,获取电影排行榜

Python应用现在如火如荼,应用范围很广.因其效率高开发迅速的优势,快速进入编程语言排行榜前几名.本系列文章致力于可以全面系统的介绍Python语言开发知识和相关知识总结.希望大家能够快速入门并学习Python这门语言. 本文是在前一部分Python基础之上程序员带你十天快速入门Python,玩转电脑软件开发(四),再次进行的Python爬虫实战课程. 正则表达式实例简单详解 正则表达式干什么用? 就是在字符串中提取我们需要的内容的. 记得哦,要先引用正则表达式模块的哦. re就是正则表达式相

Python爬虫学习系列教程

Python爬虫学习系列教程 大家好哈,我呢最近在学习Python爬虫,感觉非常有意思,真的让生活可以方便很多.学习过程中我把一些学习的笔记总结下来,还记录了一些自己实际写的一些小爬虫,在这里跟大家一同分享,希望对Python爬虫感兴趣的童鞋有帮助,如果有机会期待与大家的交流. Python版本:2.7 一.爬虫入门 1. Python爬虫入门一之综述 2. Python爬虫入门二之爬虫基础了解 3. Python爬虫入门三之Urllib库的基本使用 4. Python爬虫入门四之Urllib库

selenium + python自动化测试unittest框架学习(二)

1.unittest单元测试框架文件结构 unittest是python单元测试框架之一,unittest测试框架的主要文件结构: File >report >all_case.py >test_case >__init__.py >test_case1..... >public >__init__.py >login.py >loginout.py test_case文件夹主要存放测试用例,且测试用例命名以test_开头 public文件夹是test