测试开发全栈之Python自动化 JS (javascript) 在自动化测试项目中的应用 [软件测试开发入门教程]
有朋友反映最近我写的东西太难了,太高级了。比如说我今天分享的主题是
javascript 在自动化测试中的应用
有些朋友说我之前讲的自动化测试的东西,需要消化很久,有一定的难度,意思就是说我动不动就讲测试框架,测试开发
是不是会有这样的感觉?
比如今天分享的 javascript,大家做软件测试有没有用过?或者在自动化测试中应用过
可能很多朋友 javascript 都是在 Html 中应用。
我们做测试就是会应用在自动化测试当中
不管学什么技术,都要活学活用。
基础比较差的朋友,如果你觉得前方高能,可以先去把基础巩固一下,我始终认为一个点
如果你在互联网行业,做测试工程师。我们的目光一定要长远一些,格局要高一些,任何一个行业如果做到极致,就是艺术家。
不要求所有人都达到极致,但是至少我们要往测试高级目标推进,那如果你没有这个目标,那估计你永远都不会推进,不会往这个方向去走,我们本可以做到测试高级,为什么还一直在做功能测试,做初级。
因为最近我看到拉勾网和 Boss 直聘上面有个大数据,现在不是大数据时代吗?
这一类大型招聘网站,给我们软件测试行业发了一个文章,就是软件测试从业者大概的一个现状
现在软件测试从业迎来了一个危机,是什么呢。
因为行业的高速发展,互联网行业单纯的功能测试很多已经无法满足企业的需求,当然很多朋友单纯的做功能测试也能 “活” 下去,而且有些在一线城市,工资待遇还不错。
现在你叫得出名字的大厂,百度京东阿里美团字节跳动,或者说大一点的公司,他对功能测试的岗位需求,更偏向于成本较低的应届毕业生,为什么还要招一个三年五年的功能测试,成本考虑。
还有单纯的手工测试,在企业中想涨薪那是不大现实的,或者做管理,你也非常难。
还有在做功能测试过程中,你的长期重复性工作,缺乏一个系统性的学习,平时接触的业务非常局限,那么导致你经验不足,这个会造成一个恶性循环,一直是这样,然后做了几年你就会遇到瓶颈。
因为今天我在招聘网,看到了这篇文章,大数据显示的。
所以和大家分享一下最新的资讯。
如果你不会,我之前分享的一下测试框架,这些测试开发技术,你跟大厂,测试开发岗无缘。
再怎么做,你也很难被推荐
其实做技术这一行业,你做到有一定的成就,你的技术比较好,你去找工作,根本不需要去面试了。
像我之前,如果我要换工作,基本上要么就是猎头找到我,要么就是大厂的一个在职员工,内部人员推荐。
你的技术达到一定的级别,你根本不需要主动去找工作,很现实。
测试开发工程师这个岗位,现在有一个什么样的特点呢?
薪资高,级别高,就是你去阿里巴巴,去蚂蚁金服你的级别肯定是很高的,然后稀缺度高。
就是说这一类的人员非常稀缺,十个测试有八个初中级,可能就是传统的功能测试,可能有一两个是自动化测试高级,测试开发高级。
如果你去听一些自动化测试,测试架构直播公开课,觉得有一些太深的知识点很茫然,听不懂的朋友
有没有考虑过是自己的问题,该充电了。
如果大家想在短时间内,系统性的突破,学习测试技术,成为高级,测试开发,成为资深,可以公众号程序员一凡,领取一些系统性的学习路线以及相对应的学习教程。
闲言少叙,我们直接进入今天的主题,我们从这三方面来讲解 javascript 在自动化测试中的应用
javascript 简介
JavaScript 是 Web 的编程语言,是目前最流行的脚本语言,这门语言可用于 HTML 和 web 开发
JavaScript 可以让静态 HTML 页面上添加—些动态效果
JavaScript 是可插入 HTML 页面的编程代码。
JavaScript 插入 HTML 页面后,可由所有的现代浏览器执行。
web 网页的组成
HTML 定义了网页的内容
cSs 描述了网页的布局
JavaScript 实现了网页的行为
HTML 中的脚本必须位于标签之间。脚本可被放置在 HTML 页面的
和部分中。有很多朋友可能觉得 JavaScript 是开发使用在 Html 中
JavaScript 第一点
我们现在做自动化测试有一个什么样的特点?
很多 Web,比如说我们的 Web 自动化测试框架一个原理,就是通过 JS 来实现对 Web 元素的操作,所以我们为什么要了解学习 JavaScript,你做自动化可能很多朋友在网上看到一些简单的 DEMO 代码,用来简单的实现自动化,那你真正的了解过这个自动化到底是怎么实现的?
比如说我们很经典的,一个 selenium 框架,那么它是怎么将我们的自动化做起来的呢?
它将我们需要操作的业务逻辑,点击内嵌到自己的一个网页中,那再通过一些脚本语言来实现这个伪元素的操作,这是它的一个底层核心原理。
所以说如果你真正的去面试的时候,面试官问你 Web 自动化框架底层用什么来做的。就是说它通过 JS 获取浏览器很多对象,去进行操作,去执行,其实我们的 selenium 框架也提供了操作 JS 的方法。
JavaScript 第二点
如果你做接口测试,JavaScript 可以执行接口测试。
我拿之前的一个项目给大家看一下
用 Postman 做一个完整的自动化测试流程,再用 Python 加一些框架来实现。
那么在用 Postman 的时候,比如说一个论坛的项目
那么他在这么多接口之间,相互关联的时候,它中间会用到一些 javascript 代码
比如这个就是定义一个变量,就是 JS 的语法,所以说它可以执行接口测试。JS 在 Postman 里面进行一些参数关联,环境变量的设置,结果的校验,其实都是 JS 语法,所以说不管做接口测试,功能 UI 测试都会去用到这个 JS,大家有没有用过呢。
JavaScript 第三点
JS 其实可以提高自动化测试的效率和稳定性,如果你做 UI 自动化,你通过一些 JS 语句它可以提高这个效率,我们做自动化测试最怕的就是效率太低了,然后脚本不稳定,那其实我们最怕的两个点,如果很多用例你用这个 JS 来替代,是不是可以提高我们自动化测试的效率,刚好是我们想要的东西。
当然还有很多东西,我们不得不来了解这个 js,就是说大家在工作过程中,你去看这个控制台里面,有时候非常多的信息,就是 JS,比如说下图报错,然后一些什么类型的消息,调试,这个里面都是一个 JS。
那么说了这么多的 JS,为什么要来学 JS,javascript 和 Java 有什么关系?
了解一下他的历史、渊源。
其实,它和 Java 没有任何的关系。、
它只是借着 Java 的名声,一个非常火爆的程度,然后取了这样的一个名字,当时刚开发的时候,趁(蹭)热!
其实 JS 也是一个行业大牛,花了不到一个月的时间,开发出来的,一般的我们学习一门语言,大家可能都是第一句代码
比如说大家学 Python 学 Java,第一行代码。都是
print("hello world")
那么我们 js 在哪里些代码呢?
比如 Python 是不是用 PyCharm 来写?
一般最简单的就是在控制台里面打印,比如我们来学习 JS 了,我们第一行代码。
这就是在浏览器开发者工具,在这个控制台里面。
其实用得最多的还是在 Html 里面,像很多年之前,没有这个 js 之前网页都是静态的,那么现在的网页是不是都会有很多酷炫的效果,很美观,那么动态是怎么来实现的呢?
比如这个 12306 网站,联系客服,我鼠标一移上去,它会变一个颜色对吧,这个不算酷炫的效果,一个简单的动态效果,那它肯定是通过 JS 来实现的,我们一起来写一个简单一点的效果。
比如说,现在所有的 Web 页面,它是怎么来的,它是由哪些东西组成的,像你随便看到一个网页,为什么会在网页上显示这些东西,那么它首先是一个 Html 定义了网页的内容,就是你在网页点击右键检查(快捷键 F12)
这个里面都是 Html 代码
Html 里面它有一个定义了网页内容,那么 css 描述了网页的布局,什么叫网页的布局?
那么这个排版,整整齐齐,颜色搭配,字体大小,等等,都是 css。
像我们鼠标移上去显示一个什么动态效果,就是我们今天将的 javascript,它实现了网页的行为。
如果我们想来做一个简单的网页,比如说你做一个表白网页,气球,一个心形的效果
你在 PyCharm 编辑器里面新建一个,写这个网页看不懂没关系,毕竟我们主要还是做测试。
后面它在自动化测试中如何应用的才是重点。
比如这是 0721_js,
你新建一个 Html 文件就好了,这个时候它就会出现一些初始化的代码。
这是一个网页,由 Html 组成,现在其实我们就可以去打开这个网页了,但是什么内容都没有,一片空白。
对这个感兴趣的微信公众号程序员一凡,主页点击领取资料,有录制的视频教程讲解。
这篇文章做一个入门的讲解,javascript 在自动化测试中的应用视频详解教程免费领取。
愿你我相遇,皆有所获!希望对你有帮助!