对于软件测试选择什么样的语言去学习,不同的人有不同的回答,为什么我会首选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的更多相关文章

  1. 软件测试人员必备的Python知识图库

    UI自动化测试(Python+Selenium等) 接口测试(Python requests等) 性能测试(Python Locust等) 安全性测试(Python Scapy等) 兼容性测试(Pyt ...

  2. 入门人工智能的首选语言为什么会是Python?

    为何人工智能(AI)首选Python?当你读完这篇文章就会明白了.为何人工智能(AI)首选Python?读完这篇文章你就知道了.我们看谷歌的TensorFlow基本上所有的代码都是C++和Python ...

  3. 乐搏讲自动化测试-Python语言常识及前景(3)

    相信小伙伴们都知道,随着软件测试行业的发展和进步自动化测试已经成为必然.在竞争日益激烈的市场环境中也是你升职加薪的利器. 所以,小编决定从今天起!将要系统.连续.高质量的持续更新「整套自动化测试」文章 ...

  4. 【Python大系】Python快速教程

    感谢原作者:Vamei 出处:http://www.cnblogs.com/vamei 怎么能快速地掌握Python?这是和朋友闲聊时谈起的问题. Python包含的内容很多,加上各种标准库.拓展库, ...

  5. Python快速教程目录(转)

    作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 怎么能快速地掌握Python?这是和朋友闲聊时谈起的问题. Python包含的内容 ...

  6. Python快速教程

    作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 怎么能快速地掌握Python?这是和朋友闲聊时谈起的问题. Python包含的内容 ...

  7. python基础教程

    转自:http://www.cnblogs.com/vamei/archive/2012/09/13/2682778.html Python快速教程 作者:Vamei 出处:http://www.cn ...

  8. 在大型项目上,Python 是个烂语言吗

    Robert Love, Google Software Engineer and Manager on Web Search. Upvoted by Kah Seng Tay, I was the ...

  9. Python人工智能第二篇

    Python人工智能之路 - 第二篇 : 现成的技术   预备资料: 1.FFmpeg: 链接:https://pan.baidu.com/s/1jonSAa_TG2XuaJEy3iTmHg 密码:w ...

随机推荐

  1. Linux load average负载量分析与解决思路

    一.load average top命令中load average显示的是最近1分钟.5分钟和15分钟的系统平均负载.系统平均负载表示 系统平均负载被定义为在特定时间间隔内运行队列中(在CPU上运行或 ...

  2. UIButton vs UIEventListener 事件处理

    NGUI的事件 在使用NGUI的事件处理时,发现UIButton和UIEventListener之间的共同点越来越多. 当然处理事件,也有一些其它的函数,比如:UIEventTrigger,Butto ...

  3. LVM卷的创建及案例演示

    LVM:Logical Volume Manager, Version:2dm: device mapper,将一个或多个底层块设备组织成一个逻辑设备的模块. /dev/dm-# 这里的#表示数字,代 ...

  4. route命令详解与使用实例 ,同时访问内外网

    route命令详解与使用实例     2011-10-18 12:19:41|  分类: 其他 |  标签:route   |字号 订阅   1.   使用背景 需要接入两个网络,一个是部署环境所在内 ...

  5. win7 win10双系统开机系统引导

    以win7启动管理器引导作为启动引导 安装一个easybcd 然后里面添加引导选项(添加新条目---->编辑引导菜单(选择倒计时30秒)把use metro bootloader勾去掉就是默认的 ...

  6. Springboot连接MySQL8.0出现的问题

    以前用的是5.7版本的MySQL,在学习实践Springboot的时候顺带升级了一下8.0,遇到了一些坑,在这记录一下,有碰到同类问题的童鞋需要自取. 使用 navicat连接发现报错1251- Cl ...

  7. Math.min() / Math.max() 使用方法

    首先弄懂apply 和 call 都是js函数自带的方法.区别如下: apply和call的用法只有一个地方不一样,除此之外,其他地方基本一模一样 1. a.call(b,arg1,arg2…) 2. ...

  8. BZOJ 1934 善意的投票

    题目链接: https://www.lydsy.com/JudgeOnline/problem.php?id=1934 题目大意: 幼儿园里有n个小朋友打算通过投票来决定睡不睡午觉.对他们来说,这个问 ...

  9. AOP实现拦截对象以及获取切入目标方法和注解

    AOP实现拦截对象以及获取切入目标方法和注解 一.JoinPoint是什么? AspectJ使用org.aspectj.lang.JoinPoint接口表示目标类连接点对象,如果是环绕增强时,使用 o ...

  10. WorldWind源码剖析系列:地形瓦片类TerrainTile和地形瓦片服务类TerrainTileService

    地形瓦片类TerrainTile 用来抽象封装用户漫游中所请求的地形瓦片数据类型. 地形瓦片服务类TerrainTileService提供了从BIL(Binary Interleaved by Lin ...