自动化测试的成本高效果差?首先这个结论就太过武断了一些。
任何技术都需要放到适合的地方去使用,否则一定是达不到理想的效果的。举例大炮打蚊子,同样是成本高效果差,难道大炮就没有存在的意义了吗?当然不是,只是咱们把大炮用错了地方而已。
为了将这个问题阐述清楚,所以本文行文结构如下:
1、自动化测试提升测试效率的应用场景
2、自动化测试于公,对于工作的更大意义
3、自动化测试于私,对个人的意义
4、自动化测试学习资料分享
如果对软件测试、接口、自动化、性能测试、测试开发、面试经验交流。感兴趣可以加裙485187702,群内会有不定期的发放免费的资料链接,这些资料都是从各个技术网站搜集、整理出来的,如果你有好的学习资料可以私聊发我,我会注明出处之后分享给大家。
做自动化测试的前提,首先要分析当前项目和当前产品是否适合做自动化,适合做哪种自动化?
1、下面这2类项目,不适合做自动化,手工点是最高效的方法,坚持自动化倒会“成本高效果差”。
类1:如果项目周期很短,开发完就交付,后续也没有什么升级迭代的需求。
类2:项目目前非常不稳定,客户的需求经常性的发生变化。
2、下面这2类项目,就适合做自动化。
类3:项目周期比较长,需要进行长时间的迭代,项目的主体业务流程也比较稳定了,但是界面上经常根据用户的喜好要求来变化,可以先做接口自动化测试;
类4:主功能已经基本稳定,业务和界面都不再有大调整,就可以同时做接口自动化和UI自动化。当然,若有新增需求,则可以在手工测试稳定后,再逐渐进行自动化实现。
3、以上类3和类4,完成了接口自动化和UI自动化的脚本编写后,后续迭代开发过程中,想大大提升了测试执行的效率。可采用下面的方法:
新功能,对应的用例采用手工执行,
老功能,对应的测试用例使用 自动化脚本来执行。
小项目可能很难体会到这种便利。但项目大的话,比如我之前一个项目常规用例就有1万条左右,因为有自动化脚本帮忙保证这些常规功能的可用,这就非常方便了。
但,自动化测试的意义,不仅仅是编写自动化测试脚本来执行用例。
自动化测试更大的意义是要想办法提升测试效率和版本发布质量。从广义上来说,自动化测试,是包括持续集成探索、测试工具平台的开发、智能自动化等。
PS: 其中测试工具平台的开发,简称测试开发。后面介绍的这一套框架能跑起来,本身就是测试开发的工作。
作者:黑马测试
链接:https://www.zhihu.com/question/19786019/answer/3222101868
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
本文介绍下持续集成和智能自动化。
在敏捷开发时代,持续集成的作用越来越突出。
1)持续集成解释:
持续集成目的,就是让软件产品可以快速的更新迭代的同时,还能保持高质量。持续集成就是说研发团队成员,要经常集成他们的工作。通常每个成员每次都需要集成一次或多次。每次集成,都可以通过自动化构建,包括 编译发布、 自动化测试验证,从而可以尽快的发现集成中的一些错误。
2)持续集成对于测试工作的的好处:
1)易于定位错误。也就是当你的持续集成失败了,说明你新加的代码或者修改的代码引起了错误,这样你很容易的就可以知道到底是谁犯了错误,可以找谁来讨论。
2)会提升测试效率。持续测试会与测试工具或者框架结合,如与xUnit,SilkTest, LoadRunner等等。
3)便于开发流程的管理。比如说,要把一个开发的build提交给测试组做测试,测完满意了,再提交到发布组去发布。
3)持续集成如何做呢,这其中离不开自动化测试这个关键步骤。
首先我们可以通过git(或其他类似工具)拉取软件代码。
然后我们要去做 自动化构建,自动化编译、 自动化测试、自动化步数、自动化发布等一系列步骤.
最后我们可以通过邮件自动化,实现通知团队中的相关工作人员去完成对应的工作内容。
持续集成是目前相对比较成熟的技术方案,在掌握了这一套持续集成的技术之后,可以在此基础上进一步开发测试工具和测试平台(测试开发的工作),如测试环境管理、配置管理、项目(需求/缺陷)管理、线上问题监控、打点统计等工具平台。
最后通过工具打通CI(持续集成)和CD(持续部署)的所有环节,使用持续集成的框架串联起来,可以大大的提高开发团队工作效率和产品的质量。
自动化持续集成平台示意图
智能自动化测试,是通过机器学习、大数据等技术,智能化生成 自动化测试的用例和脚本,提高用例编写和维护的工作量。
通过智能自动化测试概念的介绍,自动化测试也是重要一环。
虽然这部分是测试行业内一直在探索的技术领域,目前并没有非常成熟的方案或者体系。但如果能够找出有效的、成熟的解决方案,那就一定是是自动化领域“牛逼”的测试人员。
企业对测试人员的技能要求越来越高,这不仅是经济形式叠加,更是软件测试行业的发展。
当前,企业对测试新人的要求,已拔高到自动化测试这水平了,如果测试技术还停留在手工阶段,那就很难找到工作。
所以,自动化测试,是测试人员必备的技能。将来无论换工作,还是比发展,自动化测试工程师肯定比纯手工好很多。
如果技能还是手工阶段,真诚希望你赶紧升级到自动化测试。不然未来,你靠什么建立职业护城河?你靠什么避免失业风险?
总之,自动化测试也是项目组在产品研发中非常重要的一个助力,可以帮助我们大大的提高测试效率,提升质量。不过前提是你能在适当的项目中选择适当的自动化技术来解决项目中的问题,否则就会给人感觉“成本高效果差”了。
最后:下面是配套学习资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!【100%无套路免费领取】
被百万人刷爆的软件测试题库!!!谁用谁知道!!!全网最全面试刷题小程序,手机就可以刷题,地铁上公交上,卷起来!
8小时传疯!大厂面试真题全被大佬整理在这个小程序上了!【软件测试,建议收藏】
涵盖以下这些面试题板块:
1、软件测试基础理论 ,2、web,app,接口功能测试 ,3、网络 ,4、数据库 ,5、linux
6、web,app,接口自动化 ,7、性能测试 ,8、编程基础,9、hr面试题 ,10、开放性测试题,11、安全测试,12、计算机基础