• 0
  • 0
分享

  软件测试是用来验证软件解决方案或产品是否符合要求和期望的过程。软件测试的旨在发现缺陷,并证明软件是适合使用的。有许多测试方法、类型和技术可用于验证功能和非功能需求。

  测试自动化是使用其他软件来自动化手动测试或在应用程序中执行手动用户操作的过程。在手动测试不可能或费时的情况下,用其他软件的帮助来验证软件是一个好主意。

  自动化测试是使用专门的软件工具验证软件解决方案,通常涉及自动化功能作为测试过程的一部分。

  自动化测试是使用特殊的软件,与被测试的软件分开,来控制和执行测试,包括实际结果与预测结果的比较和报告。应用程序被称为被测应用程序(AUT the application under test)或被测系统(SUT system under test ),用于测试的软件被称为自动测试工具(ATT automated testing tool)。

  测试对于所有的IT系统都是必要的,有许多IT系统在没有适当的测试的情况下上线,最后出现了缺陷,造成了经济和声誉的损失。测试是任何IT解决方案开发的核心活动,独立于软件开发生命周期(SDLC software development life cycle )方法,如DevOps、精益、敏捷或瀑布。

  IT项目和测试是在三个约束条件下进行的:成本、时间和范围。这三个因素,通常被称为 "三重约束"。三重约束的任何变化都会对质量产生相关的影响,而这一影响是通过测试来衡量的。

  基于风险的测试(RBT Risk-based testing)是广泛使用的优化测试时间和努力的方法之一,测试自动化是另一种方法。基于风险的测试和测试自动化可以结合起来。

2-1.jpg

  基于风险的测试是管理质量风险的一个很好的解决方案,因为它减少了时间。基于失败风险的测试工作分配是优化测试的高效和有效的方法之一。基于风险的测试方法的主要好处之一是确保从计划的测试活动中获得最大的价值,即使在完成测试执行的时间减少的情况下。

  一些常见的测试方法:

  ·尽早开始测试或测试准备,例如在计划和安排的测试之前进行非正式测试。

  · 作为商业案例开发或设计阶段的一部分,从一开始就让测试团队参与进来。

  · 减少重复的测试,如系统测试(ST)和用户验收测试(UAT)中的普通测试。

  · 连接或合并测试周期,例如,系统集成测试(SIT)的最后一个周期和UAT的第一个周期。

  · 引入质量保证(QA)过程作为一种积极的措施。

  · 使用测试技术,如探索性测试来发现缺陷。

  · 引入测试自动化。

  测试自动化是一个软件开发项目,包括软件开发生命周期中的大多数阶段。

  测试自动化框架是一个编程框架,包括一套全面的准则,以产生测试自动化活动的有益结果。自动化框架是由ATT提供的,或者在某些情况下,是一个定制的工具,它管理测试自动化,以产生更好的结果。测试自动化框架通常为自动化工具提供一个适合其目的的结构。大多数测试自动化工具为SUT的自动化提供了一个默认的框架;然而,自动化工具可以针对特定的要求进行定制,例如自动化框架可以按照最适合特定需求的方式安排各种测试任务,生成自定义的测试报告。

  有许多方法可以使软件测试高效,而测试自动化是其中的佼佼者。

  测试自动化是减少测试工作的关键方法,但它不是所有测试活动的万能药。测试自动化可以在测试周期的不同阶段引入,如:

  · 产品开发或解决方案的实施

  · 测试管理

  · 功能和回归测试

  · 支持(上线后)或运营

  · 测试生成

  · 测试数据的生成

  · 测试结果的检查和评估

  · 合规性

  测试自动化在各个行业和应用中被广泛使用,并产生巨大的效果。软件开发方法,如DevOps、Agile、Waterfall和它们的不同风格,广泛使用测试自动化来降低成本,提高效率和准确性,并加快回归测试。

2-2.jpg

  测试自动化是在充分的数据和分析基础上做出的战略决策。然而,许多项目和组织把测试自动化作为简单的降低成本的方法,最后却惨遭失败。它不是降低成本、节省时间和提高软件测试质量的捷径,也不应该被这样对待。在考虑将自动化作为测试的一部分之前,各种因素如SUT、技术和生命周期起着重要作用。如果使用得当,测试自动化是成功和安全地提供软件测试的最可靠方法之一。在实施成功的自动化过程中,有许多挑战,如工具识别、技能要求和工作方式。


作者:python测试开发    

来源:http://www.51testing.com/html/02/n-4481502.html

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          • fiddler抓包原理注意:Fiddler是以代理web服务器的形式工作的,它使用代理地址:127.0.0.1,端口:8888。当Fiddler退出的时候它会自动注销,这样就不会影响别的程序。不过如果Fiddler非正常退出,这时候因为Fiddler没有自动注销,会造成网页无法访问。解决的办法是重新启动下Fiddler。配置打开FiddlerTool->FiddlerOptions->HTTPS。(配置完后记得要重启Fiddler)。选中"DecrptHTTPStraffic",Fiddler就可以截获HTTPS请求,第一次会弹出证书安装提示,若没有弹出提示,勾...
            10 11 4539
            分享
          • 性能测试,是结合被测系统应用架构、业务场景和实现细节、逻辑,对软件响应时间、处理速率、容错能力等进行分析测试,找到系统的性能瓶颈,并确认问题得到解决的过程。由于工作需要,对性能测试缺陷分类进行了整理,这篇博客,聊聊常见的性能缺陷以及表现方式。。。性能测试缺陷分类缺陷类型缺陷描述硬件磁盘空间CPUIO读写速率内存网络带宽网络波动CDN延时丢包应用JVM代码逻辑配置JDK版本底层配置参数配置数据库索引锁表空间慢SQL数据量中间件超时线程池缓存策略最大连接数通信实现方式负载均衡一、硬件磁盘空间:磁盘空间不足导致系统运行变慢,文件、日志等无法生成存放导致的性能瓶颈;CPU:CPU的核心功能是解释计算机...
            13 13 1244
            分享
          •   2022年度软件测试行业的趋势预测:如果你也想了解更多发展趋势,那就点击下方链接填写调查问卷吧!助力测试行业发展,还能获得精美礼包哦~链接:http://vote.51testing.com/  百度一下“软件测试前景”,前几个点进去都是某某培训机构的广告,后面的点进去间接的介绍一下然后又是各种机构的广告。所以,对于很多测试人员,尤其是职场小白,完全不知道自己进入这个行业的前景,至于后面有什么规划,走上什么道路更是一片迷茫。那么软件测试的前景和发展方向在哪呢?  测试前景  其实,目前的国内市场,很多软件企业都存在着重开发、轻测试的现象,甚至有很多互联网和软件企业都没有测试,上线纯靠开发和...
            0 0 575
            分享
          • 在学习测试理论基础时,相信大家都曾看到这个问题“请说说软件测试分类”,其中一个答案就是:按测试阶段,软件测试可分为:单元测试、集成测试、系统测试、验收测试。那么,单元测试?单元测试?什么是单元测试呢?最初作为一个对单元测试毫无概念,对单元测试的了解仅限于官方简介说明,且只会if else基础语法的初学小白而言。觉得单元测试肯定是需要强大的代码能力,是那种能写上千万个字符代码的资深码农才会的技能。后面学习了测试开发课程后发现,其实单元测试从某种层面上可以简单的说就是测试某个单元函数方法是否满足设计的测试。在前端界面未实现的情况下,通过写单元测试代码来调用测试这个函数。例如:开发写了一个求和函数,...
            0 0 1605
            分享
          •   伴随着互联网发展的时代洪流,一些曾在大城市打拼的年轻人,他们告别了“朝九晚五”的职场坐班状态,选择来到一个节奏更慢、生活成本更低的城市。他们或是远程办公,或有自由职业,也可能正在自主创业。  2015年,在数字游民还没有进入绝大多数公众视野的时候,Levels受邀在德国柏林的DNX峰会上做了一场题为“The Future of Digital Nomads”的演讲。  这场演讲的全程录像可以在油管上找到。值得注意的,这条油管视频的标题是:“There Will Be 1 Billion Remote Workers by 2035 with Pieter Levels”  “到2035年,...
            0 0 446
            分享
      • 51testing软件测试圈微信