软件

聚合全网黑科技,软件干货分享,探索、实践、思考、总结最新技术。

讲一下 我Python自动化测试踩坑记录,探讨一下企业中如何实施自动化测试

2020-11-05 16:20:20 阅读数 79 收藏 0

新公司中怎样执行自动化测试

在大家读高中的时候,是否常常听老师说:学好数理化,踏遍天下都不怕。

做为软件测试这一个领域,在时下,你掌握自动化,你到哪儿应聘都不用担心。

算是这样的话说,可是你要想提前下班,自动化测试解放出人工、提高工作效率,让程序代码脚本在无需看管的前提下“起飞”假如你的代码、脚本掉来到坑里,你觉得还能提前下班吗?

有可能,你甚至于比不上其他人做功能测试的。别人1个功能模块都检测完好久了,你的自动化脚本报了一大堆错,还不知道找这个异常的缘故。自然而然你的自动化做不下去,自动化的意义体现不出来。

因此,我专门针对大家Python自动化测试中的基础极易遇到的一部分坑,来进行一部分实战的范例解析。

在讲这一部分坑之前,先给大家一起探讨下我对自动化测试的概念的定义。

在做自动化测试之前,我们要审视1个问题。自动化不是说你就会写一方面比较简单的自动化脚本,你就能来执行。你得会有一个计划,再去逐渐的实施落地。

我汇总了几个:

1.通过行业特性,决定自动化测试方法。

⒉.通过行业侧重点判断自动化辐射面和粒度。

3.通过自动化测试用例区间,决定建立框架和语言。

4.通过用例适用范围,决定执行策略。

(1)你来1个新公司,你的产品是什么样子的,通过你产品的行业特性,你来决定明确1个自动化测试方法,这个很重要。例如说大家新公司关键注重行业特性是数据库或是后端的一部分信息(有些产品注重前端的界面)

因此你得决定1个方法,是先做UI自动化依然是接口自动化。

自动化关键分为两大块:UI与接口

UI:Selenium

app:Appium/uiautomator2/airtest

接口:HttpPostmanRequests

websockets/dubbo

例如说你先做UI自动化,你确定了这一个方法,随后你可以通过行业侧重点判断自动化辐射面和粒度。

例如说大家新公司做UI自动化,你并不是看见1个网页页面就要写自动化测试用例。从登录到注册再到忘记密码等等等等,你无需所有的东西去覆盖,你得通过大家新公司的1个核心流程,哪些是必须要覆盖的,哪些是有技术难点的,你可以放到第二期。

随后通过这一个区间和方法,你来决定合适的检测框架和语言。

例如说你做UI自动化,推荐 你优选的框架Selenium,那或许如果你是APP(安卓)强烈推荐你使用uiautomator2这是Python的1个第三方库,它区域环境依赖相对简单,或许目前市面上较为主流的依然是Appium,它的区域环境依赖复杂,它的唯一1个优势或许也是支持IOS,它是混合开发的。如果你是设计游戏的,强烈推荐你用airtest

倘若对软件测试、接口、自动化、性能测试、测试开发、应聘经验分享。倘若您有好的学习资源能够私信发我,我可以标明来源以后一起探讨给大家。

接口:HttpPostman

目前大部分新公司,用的都是Http接口协议。工具可以用Postman

假如你接口自动化,用Python的1个库,Requests

Python为何这样的话好使,它有比较丰富的第三方库。也是取来即用,里边封装了许多 不错的API

或许还有websockets/dubbo,像这一类型协议的接口。

做检测离不了1个关键字,也是自动化,目前无论你来新公司中或是你来应聘,你与竞争者一谈到1个关键词肯定是自动化。即使你现在去应聘1个功能模块,并不是做自动化,面试官和考官也会询问你自动化的信息。这是因为自动化这几年是一个必备技术了,而不是你就会一丢丢自动化也是1个加分项了。

前边好几年大家都了解用的比较多的是QTP、LoadRunner这样的话一部分工具。

终究因为历史的缘故,大家最开始接触的都是功能模块层面的检测,因此你得明确适合的框架。

无论是哪个协议的接口,用Python基本都能解决,Python是一个语言,去驱动左右任何1个框架都可以。或许还有别的的决定,比如JAVA、JS等等等等。

或许最适合刚自学自动化的朋友而言,或许依然是Python。并且Python能够做许多 的东西,例如说你新公司要做网络爬虫,要做一部分数据整理,Execl表格实际操作,这类东西你倘若在新公司工作区间之外,你可以帮助到这类东西,这样的话这一个就是你的加分项,你的意义就展现了。

总结下我的首份工作,我那时候第1个在新公司贡献的点就是说,我去用Python去写了1个网络爬虫脚本,那时候帮大家的售后服务部门搜集了上百万条的数据。Python做网络爬虫提供了非常方便的库。

随后大家假设前边的信息都明确好了,能够通过自动化测试用例的一部分适用范围,去决定执行策略。

你或许去做上线前的检验,上线以后回归,触发性的检验(当某一些行业它只能在某些特殊的前提下才触发这一个功能模块),持续集成。

触发性的检验:举1个非常简单的例子,我今年身份证件2020年到期了,