自动化测试工具开发用什么语言(页面自动化测试工具使用)

为什么要进行自动化测试开始正文前,我们必须先统一认知,充分认识到自动化测试的必要性,随着被测系统越来越大,逻辑越来越复杂,测试的工作量也会倍增,这必然会暴露出测试资源与测试生命周期的冲突,因此为了更快、有效、可靠的对被测系统进行测试,需要引入自动化测

为什么要进行自动化测试

开始正文前,我们必须先统一认知,充分认识到自动化测试的必要性,随着被测系统越来越大,逻辑越来越复杂,测试的工作量也会倍增,这必然会暴露出测试资源与测试生命周期的冲突,因此为了更快、有效、可靠的对被测系统进行测试,需要引入自动化测试。

而另一方面,当下测试开发岗位是目前软件测试的主趋势,也是升职加薪的必要手段,因此自动化测试必须要尽快实施。

自动化测试工具开发用什么语言(页面自动化测试工具使用)

分层做自动化

选择做自动化,首先要明确目标,自动化是分层的,目前主流认为,自动化测试主要分为UI、SERVICE、JUNIT 三层。

自动化测试工具开发用什么语言(页面自动化测试工具使用)

所以我们做自动化的第一步要确认,自己要做针对哪一层的自动化,每一层自动化要做的事情如下:

1.UI 层:主要是对页面元素进行检验,多用于测试浏览器的兼容性。

2.SERVICE 层:主要针对的就是接口,而接口关注的就是一个类、或者一个函数的实现。

3.Junit 层:则关注于底层代码的逻辑,需要精确到每个 if 分支、每个 for 循环的运行。

以主流电商淘宝网为例:

自动化测试工具开发用什么语言(页面自动化测试工具使用)

此时我们想验证下谷歌、火狐、EDGE、Safari 浏览器是不是都可以正常进行搜索,此时我们就可以将这个功能做出 UI 自动化,自动识别搜索框,而后在各个浏览器以验证其兼容性。

那么我们输入”苹果手机”,而后点击搜索,此时服务器会根据用户要求返回查询结果,这时就是接口测试。

自动化测试工具开发用什么语言(页面自动化测试工具使用)

有了接口,后台会判断关键字:收到”苹果手机”就返回其相关内容,如果搜索地为”华为手机”就要返回华为手机相关内容,此时就涉及逻辑判断,最好通过单元测试实现。

明白了每层的自动化的测试标的,接下来再给大家介绍下,为什么是金字塔模型,这代表每层的比重和重要性,因此这个模型告诉我们:

·一定要对底层实现做单元(JUNIT)测试,当然这部分大部分都是由开发实现。

·UI 因为其不稳定性,投入高但是往往效果小,因此比重低,但是这个框架有个好处,适合学习入门,因此如果你第一次尝试自动化,不妨从 UI 开始做起。

·接口自动化,对测试人员的编码能力有足够高的要求,但是相对于单元测试,又少了很多细节技术的学习,因此推荐有一定代码基础的人从接口自动化做起。

所以这里我的建议是,先树立目标,从哪一层开始做起,入门级做 UI,有一定的基础直接做接口。

自动化前的技术储备

决定做自动化之后,是需要有一定的技术储备的,结合我个人的经验,给出如下建议:

第一步:确立学习一门主要的编程语言,这里主推 java,虽然 python 被很多人说适合测试,但是我建议你学习 java,因为自动化核心的框架 selenium、testng 都是 java 语言编写的,最主要的是,用 java 更贴近于目前大部分公司系统,遇到问题可以随时请教公司研发同事,另外一旦实施,很多环境可以开箱即用。

第二步:学习一门自动化框架,推荐 selenium、testng、allure(这个用来产出报告的)

第三步:弄清楚主流的应用层通讯协议,这点至关重要,如果你压根不明白什么是 http 接口,什么是微服务接口,什么是 TCP 协议接口,什么是 API 接口,那么你可能很难有自动化的架构思维。

第四步:了解下自动化的基本组成,一般要进行:自动化用例设计、脚本开发、数据驱动、参数化、生成测试报告 这六大模块,需要了解下每个模块的大致做法,这样方便后面自己定位问题。

第五步:学习下主流的开发技术框架,推荐 springboot,有了这个一站式开发框架,可以快速的帮助你搭建分层的自动化框架,一定要了解下。

第六步:学习下 maven,这个可以更好的帮助你管理自己的自动化工程。

最后一步,最最关键,边学习边做是最佳实践,不要学完了再用,而是要边学习边应用,边应用边积累,养成写技术博客的习惯。

这里我强调技术储备非一朝一夕之功,只要自己有了学习方向,就可以边做边学!

终极测试的职业规划

如果一旦进入到自动化测试的行业,请明白,也只是测试职业生涯的一小步而已。如果想要在测试行业继续耕耘,有更高的成就,需要为自己制定好严格的职业规划路径。如果把目前的自动化测试分为初级、中级、高级、专家四类,在每一级的要求如下:

自动化测试工具开发用什么语言(页面自动化测试工具使用)

可见从初级成长到专家,要做的事情非常多,每一级别的成长都有其对应的技能标准,我们只有对自己的职业有清晰的认识,才能使我们走的每一步都掷地有声。

今天与大家一起探讨了从功能测试想要转到自动化测试所要做的思考和准备,总结来看,我们首先要清晰的认识自己到底要从哪一层的自动化开始做起,这需要对自己目前现状做充分分析才能决定,确定了做自动化,那么技术储备必不可少,要清晰的认识到做自动化是离不开技术编码的,最后入行了自动化,要对其职业发展有明确的规划,这样自己才能朝着目标越来越近,大道至简,多说无益,选择转行自动化,那么从现在开始行动吧!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请发送邮件至 55@qq.com 举报,一经查实,本站将立刻删除。转转请注明出处:https://www.szhjjp.com/n/24957.html

(0)
nan
上一篇 2021-09-13
下一篇 2021-09-13

相关推荐

  • 「下载的jekyll模版需要修改什么」jekyll模板

    下载的jekyll模版需要修改什么,jekyll模板 内容导航: github pages下的jekyll怎么配置都是垃圾 WPS中的模板怎么修改 如何使用Jekyll的Categ…

    2022-08-26
    0
  • Kafka流处理中的状态管理和容错机制是什么

    在Kafka流处理中,状态管理和容错机制是非常重要的组成部分,用于保证流处理应用的准确性和可靠性。状态管理是指处理流数据时,需要保存和管理一些中间计算结果或状态信息。这些状态信息可以是简单的计数器,也可以是更复杂的数据结构,比如累加器、聚合结果等。Kafka流处理框架提供了各种内置的状态存储和管理机制,比如内存状态存储、RocksDB状态存储等,开发人员可以根据需要选择合适的状态管理方式。容错

    2024-04-22
    0
  • 怎么使用Composer管理PHP项目和获取库

    Composer 是一个 PHP 的依赖管理工具,它可以帮助你轻松地管理项目中的依赖库。以下是使用 Composer 管理 PHP 项目和获取库的基本步骤:安装 Composer:首先需要在你的开发环境中安装 Composer。你可以通过在终端中运行以下命令来安装 Composer:php -r “copy(‘https://getcomposer.org/installer’, ‘compose

    2024-04-29
    0
  • 上海如何做网络优化(上海网上推广优化)

    上海如何做网络优化,上海网上推广优化内容导航:上海的4g网速为什么看高清很卡谁知道上海做网络优化的公司如何做SEO网络优化十年。一、上海的4g网速为什么看高清很卡上海作为一线城市网速应该很快啊,为什么看视频高清都卡1、网络拥堵:当前

    2022-05-08
    0
  • Prometheus支持哪些告警通知渠道

    Prometheus支持以下告警通知渠道:Email:通过发送邮件通知来告警PagerDuty:通过PagerDuty来发送告警通知Slack:通过Slack来发送告警通知Webhooks:通过Webhooks来发送告警通知OpsGenie:通过OpsGenie来发送告警通知VictorOps:通过VictorOps来发送告警通知除了以上列出的通知渠道,Prometheus还支持自定义通

    2024-03-05
    0
  • 移动营销积分有什么用(移动积分都有什么用)

    移动营销积分有什么用,移动积分都有什么用内容导航:移动积分有什么用中国移动的营销专用积分怎么兑换不了东西有什么用吗我有蛮多的移动积分移动积分有什么一、移动积分有什么用移动的积分是可以进行兑换礼品的,下面介绍兑换礼品的步骤:1、首先打开移动的网上营业厅,在导航栏中点击积分商城进入。2、然后登录自己的移动手机号。3、然后根据自

    2022-05-13
    0

发表回复

登录后才能评论