软件测试为何我会首选Python
对于软件测试选择什么样的语言去学习,不同的人有不同的回答,为什么我会首选Python呢?这就要从Python的特点与适应领域说了。
一、Python的特点:优雅、明确、简单。
二、Python适合的领域:
1.Web网站和各种网站服务 2.系统工具和脚本 3.作为“胶水”语言把其它语言的开发模块包装起来方便使用。
Python不适合的领域:
1.贴近硬件的代码(首选C) 2.移动开发:ios/android有各自的开发语言(obic,swift/java) 3.游戏开发:C/C++
三、Pthon相比其它语言具有,代码量少、入门快、易于掌握、源代码的阅读就如同读英语一样。对于初学者来说可以提高其信心与兴趣。
那Python的这些特点与测试有和关系呢?
1、使用Python编写测试工具,可以极大的提高工作效率。
我们知道IT行业是996模式,如果在工作中你的工作效率比周围的人高,那么你就可以提前下班,是不是很激动。
2。前面说过Python可以作为“胶水“语言把其它语言开发的模块包装起来方面使用。
我们知道软件测试中的动态白盒测试中分段测试可以使用两张测试方法:自底向上(bottom-up)和自顶向下(top-down);在自底向上测试中要编写测试驱动的模块调用正在测试的模块。测试驱动模块以和将来真正模块同样的方式挂接,向处于测试的模块发送测试用例数据,接受返回结果,验证结果是否正确。而自顶向下的测试需要编写一小段称位桩的代码充当接口模块,从文件中把需要的数据提供给显示模块。而这正好体现了Python作为”胶水“语言的做用。
说了这么多Python在软件测试中有哪些重要的应用方向呢?
1、利用Python可以编写测试表单脚本,自动生成是不是比你每天手动写要来的快的多,高效的多。
2、Python可以做测试报告系统 这对于不喜欢繁琐工作的你是一大福音了吧,自己轻松,领导也明白,一举多得。
3、用Python可以做一些简单的WEB网站这样我们就可以把自己在工作中需要用到的测试、开发、产品等都放到自己的页面上以便随时使用。
4、利用Python进行自动化操作:使用Python语言编写的维护服务器的代码,可以创建一些监控程序,监控测试环境和线上的接口等可以让你实现自动化测试,完成绝大多数的机械性工作,以及重复性的操作。
5、Python还可以进行当前以及今后非常热门的人工智能的开发,以及机器学习等而这也是当前以及今后软件测试的重点重点方向。
说了这么多,那可能会说我要怎么学习Python呢?
一、掌握Python的基础语法及基本数据类型:
1,Python编码环境安装与基本语法、
2,Python常用的数据类型:List、Tuple、Dict、
3,常用的控制流if&for 、while
二、掌握Python的函数、文件操作、异常处理等方法:
1,Python函数的语法,会编写函数,使用函数
2,Python异常处理&异常基类的学习,调式方法及技巧
3,file对象测试数据的读写与操作、os对目录的操作以及引用
三、掌握或者熟练Python的类和对象的操作与使用
1,类的创建、类的方法、类方法的相互调用等技术的熟练使用
2,继承与初始化函数,类的封装与复用等使用情况
四、类和对象应用-openpyx1、logging、unittest、ddt
1,python openpyxl之Excel读写测试数据
2,python pandas之Excel读写测试数据
3,python 之Mysql读写测试数据
4,python配置文件的使用与设计、类封装
5,pyhton之logging日志输出原理及类的封装
6,python单元测试-unittest
7,python单元测试报告--Htmlrepport
8,python单元测试-反射机制
9,DDT框架原理以及使用
10,DDT框架结合单元测试
至此你已经掌握了python测试编程必备的技术了。
五、在接下去的工作中,就是要快速地通过我们的所学来服务项目了。在此阶段,我们除了掌握python自带的模块外,最好在掌握一些业界广泛使用的开源框架,比如twisted、peak、django、xml等。
---------------------
软件测试为何我会首选Python的更多相关文章
- 软件测试人员必备的Python知识图库
UI自动化测试(Python+Selenium等) 接口测试(Python requests等) 性能测试(Python Locust等) 安全性测试(Python Scapy等) 兼容性测试(Pyt ...
- 入门人工智能的首选语言为什么会是Python?
为何人工智能(AI)首选Python?当你读完这篇文章就会明白了.为何人工智能(AI)首选Python?读完这篇文章你就知道了.我们看谷歌的TensorFlow基本上所有的代码都是C++和Python ...
- 乐搏讲自动化测试-Python语言常识及前景(3)
相信小伙伴们都知道,随着软件测试行业的发展和进步自动化测试已经成为必然.在竞争日益激烈的市场环境中也是你升职加薪的利器. 所以,小编决定从今天起!将要系统.连续.高质量的持续更新「整套自动化测试」文章 ...
- 【Python大系】Python快速教程
感谢原作者:Vamei 出处:http://www.cnblogs.com/vamei 怎么能快速地掌握Python?这是和朋友闲聊时谈起的问题. Python包含的内容很多,加上各种标准库.拓展库, ...
- Python快速教程目录(转)
作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 怎么能快速地掌握Python?这是和朋友闲聊时谈起的问题. Python包含的内容 ...
- Python快速教程
作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 怎么能快速地掌握Python?这是和朋友闲聊时谈起的问题. Python包含的内容 ...
- python基础教程
转自:http://www.cnblogs.com/vamei/archive/2012/09/13/2682778.html Python快速教程 作者:Vamei 出处:http://www.cn ...
- 在大型项目上,Python 是个烂语言吗
Robert Love, Google Software Engineer and Manager on Web Search. Upvoted by Kah Seng Tay, I was the ...
- Python人工智能第二篇
Python人工智能之路 - 第二篇 : 现成的技术 预备资料: 1.FFmpeg: 链接:https://pan.baidu.com/s/1jonSAa_TG2XuaJEy3iTmHg 密码:w ...
随机推荐
- MySQL crash-safe replication(3): MySQL的Crash Safe和Binlog的关系
2016-12-23 17:29 宋利兵 作者:宋利兵 来源:MySQL代码研究(mysqlcode) 0.导读 本文重点介绍了InnoDB的crash safe和binlog之间的关系,以及2阶段提 ...
- 【存在问题,待修改】SSH 远程登陆
0. 前提 设置 hosts 参考链接 Linux 配置 hosts SSH公钥登录原理 1. SSH 是什么 SSH ( Secure Shell ) 是一种协议标准,其目的是实现安全远程登录以及其 ...
- jQuery插件实例七:一棵Tree的生成史
在需要表示级联.层级的关系中,Tree作为最直观的表达方式常出现在组织架构.权限选择等层级关系中.典型的表现形试类似于: 一颗树的生成常常包括三个部分:1)数据库设计:2)后台程序:3)前端代码.那么 ...
- php框架安装
安装yii框架 跳转到composer.phar目录 cd C:\ProgramData\ComposerSetup\bin 安装yii2高级版 php composer.phar create-pr ...
- CentOS下iptables详解
一:前言 防火墙,其实说白了讲,就是用于实现Linux下访问控制的功能的,它分为硬件的或者软件的防火墙两种.无论是在哪个网络中,防火墙工作的地方一定是在网络的边缘.而我们的任务就是需要去定义到底防 ...
- RedHat 7.3 Oracle 12.2.0.1 RAC 安装手册(转)
1 准备工作 1.1 关于GRID的一些变化 1.1.1 简化的基于映像的Oracle Grid Infrastructure安装 从Oracle Grid Infrastructure 12 ...
- 集成Glide4.3.1出错!AbstractMethodError: abstract method "void com.bumptech.glide.module
项目中原本是用的Glide3.7.0,一切功能正常,但是集成了网易云信的UIKIT后,就出问题了,发现是Glide4.0的问题. Glide4.0,始终会报这么一个错,就算是最简单的加载也仍然报错. ...
- kubernetes 禁用虚拟内存 swapoff -a ----- 顺便复习sed 命令
1.如果不关闭swap,就会在kubeadm初始化Kubernetes的时候报错,如下图: [ERROR Swap]: running with swap on is not supported. P ...
- day80
昨日回顾 上节回顾: 中间件: -django请求生命周期: -中间件:对全局请求的修改,和全局响应的修改 -process_request:从上往下执行 -process_response:从下往上 ...
- 《网络对抗》Exp5 MSF基础应用
20155336<网络对抗>Exp5 MSF基础应用 一.基础知识回答 用自己的话解释什么是exploit,payload,encode exploit:渗透攻击的模块合集,将真正要负责攻 ...