4个实施持续测试的“最佳实践”
开发是一个有趣的大事件,因为我们处于传统测试与现代和持续测试之间的边界,正在从一个大型的筒仓式的结构转型到一个新的架构。之前的组织架构包含了开发团队和集中测试团队,瓶颈和延期不断的在这两个团队间交替进行着。这种新架构由小型,自管理和自给自足的团队组成,它们频繁发布软件,使用持续集成工具自动化,并管理自己的构建环境以最大限度地减少瓶颈。
但是如何从传统到现代呢?这篇文章将涵盖持续测试实施的4个最佳实践。
1. 找到正确的持续测试工具
您的工具是您工作中最重要的组成部分之一。如果您的工具可以帮助您完成工作,提升您的能力并最大限度地提高您的工作效率,那么您将完成工作。如果他们成为一个障碍,不但不能工作,而且你会感到沮丧和停止尝试。
因此,工具能够建立敏捷及测试能力前置的通路,自动化和协作方式的工具是成功进入持续测试的关键。
所以请确保找到合适的工具,使您能够持续开发,测试和持续分析。您可以查看我们撰写的有关DevOps工具生态系统的博客系列,以获取具体的想法,但一般来说,我们建议以下提示:
- 在购买工具之前尝试使用工具,让您获得他们的氛围和感觉,并了解他们的能力。如果您可以使用开源工具,例如Apache JMeter进行负载测试,请执行此操作。开源工具不断发展,他们拥有丰富的支持社区,并根据您的需求进行开发,因为最终您是客户。
- 选择与您正在使用的现有工具集成的工具。持续测试和持续集成是关于使事情一起工作,所以尝试找到工具,轻松将自己融入您的工作环境。我们特别建议您找到与Jenkins集成的工具,这是一款精彩的开源CI工具,还有GitHub(显然)。
- 选择具有自助服务平台的工具。这样,您可以立即轻松地修改和升级所需的任何东西,而无需等待其他人的决定。
- 找到具有丰富文档的工具 - 如果您想快速入门,或者想要在任何工作时间找到答案,您需要使用该工具轻松访问具有答案的地方。
- 测试时,确保您可以轻松设置通过失败标准。持续测试是关于立即确定事情是否正常,所以请确保您可以轻松地进行设置。
2. 思考“自动化”
如果您希望测试快速,顺利,那么尝试自动化您可以做的任何事情。这也节省了你的时间,使你的工作更有趣,因为你可能自动化了沉闷和重复性的工作,而不是令人兴奋和创造性的部分。
我们建议您进入自动化模式。必须确保系统每天稳定?尝试夜间自动化测试吧。必须确保代码中的每个更改都不会影响您的产品?尝试自动化每个构建吧。在与人类交流之前,每天早晨需要喝咖啡吗?你也可以自动化。
越来越多的工具可以实现自动化。 Taurus是一款开源自动化测试工具,可自动执行JMeter,Gatling,Locust和Tsung等所有开源负载测试工具,以及功能测试Selenium。它还集成了CI自动化工具Jenkins和BlazeMeter。
3. 协作
将开发架构更改为更小的原子团队对于使进程变得敏捷至关重要。但不要忘记,这些团队中的每一个都是较大产品的组成部分,而且所有团队都需要一起合作。
因此,在功能团队之间共享测试和资产,使报告易于访问和在线共享(而不是电子邮件!),尽可能地开放角色和权限,并使用像Slack和HipChat这样的webhook在测试开始和结束时通知用户。要了解有关在开发过程中结合Slack警报的更多信息,请参阅此处。
更易于反复消化信息的是人们之间的共享,更多的想法和合作将会来临。越多的开发者觉得他们对更多的部分负责,他们就会有越多的合作来推动产品的发展。
4. 定义和显示结果
所以你有了最好的工具,一切都是自动化的,你正在分享你的工作,那现在呢?现在是深度研究结果的时候了。结果将会显示您的代码和产品是否在运转,并且显示当前与要完成的工作之间的差距。
首先,定义可量化的KPI 。 这些关键绩效指标应由产品确定,并反映产品的业务目标和公司的业务计划。 它们可以包括测试覆盖率,通过失败构建的数量,平均响应时间等。
其次,创建跟踪这些KPI的仪表盘。 仪表板应显示每个KPI和他们的基线,这些信息随时间变化而变化。 只要你给它足够的时间,任何一个你扫描到的特殊的弹出,仪表盘都能够给你直观的深入的数据显示。
第三,公开显示结果,以创建透明度,并轻松识别测试覆盖范围的差距。 在走廊或隔间房间的大型显示器上显示结果是获得更多工程师采纳的关键,因为您在动员大家时刻准备着并修复需要修复的东西,而不是等待。
持续测试需要改变您的思维方式,但是通过正确的工具和环境,您可以顺利浏览更快,更有趣的开发。 使用BlazeMeter进行测试是持续测试方向的巨大飞跃。 要查看它是如何工作的, 请求演示 。 您也可以立即开始测试,将jmx文件或URL放在页面顶部的框中,您的测试将在几分钟内开始。
作者:王津银
来源:51CTO

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
软件定义网络安全:还需要操心什么?
关于软件定义安全的担忧是真实的。SDN用户对其的担忧直逼网络漏洞,也许更甚,原因不外乎:a.他们正在为其网更改新的规则;b.他们采用的是相对较新的技术。当发现安全问题需要修复时,他们得费心思更新系统和打补丁。很多网络管理员在其现有基础设施上进行安全修复工作进展相当缓慢。 如果他们采用的是经典的SDN(即网络控制和网络数据包处理相分离),他们要对控制器和数据平台设备以及所有控制器上的SDN应用进行更新。 如果采用的是以虚拟化为主的SDN,他们也得关注控制器,同时也要看护底层的虚拟化平台以及带有自己操作系统的混合的物理设备。 在这两种场景中,鉴于管理员正在改变其控制和架构网络、安全的方式,网络团队需要确保其监控工具能跟踪到最新情势。如果虚拟叠加网络创建新的安全区域,安全操作中心应该可以监测到并根据需求报告那些区域内外的活动。 人们需要时刻准备着以迎接SDN技术带来的网络攻击问题。例如,一些新的类别的耗尽资源式拒绝服务攻击很可能基于SDN控制器的使用。所有企业都应该准备好投入到新型缓解和防护技术中来。 作者:John Burke 来源:51CTO
- 下一篇
中小型网站架构分析及优化
先看网站架构图: 以上网站架构广泛运用中大型网站中,本文从架构每一层分析所用主流技术和解决手段,有助于初入网站运维朋友们,进一步对网站架构认识,从而自己形成一套架构概念。 第一层:CDN 国内网络分布主要南电信北联通,造成跨地区访问延迟大问题,对于有一定访问量网站来说,增加CDN(内容分发网络)层可有效改善此现象,也是网站加 速的最好选择。CDN把网站页面缓存到全国分布的节点上,用户访问时从最近的机房获取数据,这样大大减少网络访问的路径。如果想自己搭建CDN,不建议这 么做,因为什么呢?其实说白了,就是什么事别往运维上拦。CDN架构部署不复杂,影响效果的因素却很多,后期管理维护也比较复杂,想达到预期的效果确非易 事,这是一个费力不讨好的活,最后老板还是感觉是你能力不足。建议找专做CDN的公司,费用也不贵,有抗流量攻击能力,效果也很好,运维也少很多事,何乐 而不为呢! 第二层:反向代理(网页缓存) 如果CDN没有缓存要请求的数据则向这层发起请求,在代理服务器配置缓存功能(本地),代理服务器就查找本地缓存是否有CDN请求的数据,如果有就直接返回给CDN,如果没有则请求后端负载均衡器然后转发...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
-
Docker使用Oracle官方镜像安装(12C,18C,19C)
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS8编译安装MySQL8.0.19
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- MySQL8.0.19开启GTID主从同步CentOS8
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- CentOS7,8上快速安装Gitea,搭建Git服务器
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
推荐阅读
最新文章
- Red5直播服务器,属于Java语言的直播服务器
- CentOS8编译安装MySQL8.0.19
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- Windows10,CentOS7,CentOS8安装Nodejs环境
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- CentOS6,CentOS7官方镜像安装Oracle11G
- CentOS6,7,8上安装Nginx,支持https2.0的开启