直接抛出我的结论:手工做业务类测试,没有前途。
个人建议赶紧从业务测试跳出来,立即学习代码,走自动化测试方向。目前趋势,业务测试需要用自动化做。
为了让大家能够信服我的观点,本文将从以下方面进行阐述:
1、业务测试是什么?
2、业务测试存在什么弊病?
3、当前软件的发展介绍,业务测试出路在哪?
不要走开,马上安排。
很明显当你开始质疑“手工做纯业务测试,在测试行业是否有出路”的时候,想必在你心里已经有了答案。
一、简单介绍下业务测试
业务测试往往存在于:银行、证券、保险、财务、地产等。
越是专业领域强的项目,通常业务测试比重就会越大。
这类业务常常具有以下特点:
-
专业领域强,专业领域场景丰富,
-
业务流程长,复杂度高,更关注满足业务,
-
用户量少,但专业且单一,
-
更重视功能实现,往往对UI交互等体验关注度优先级并不高
-
...
二、纯手工测试,业务类测试没有前途。
1、先来看看纯手工测试的工作。
1)纯手工测试的目标:发现系统中的缺陷并确保测试需求与测试目标相匹配。
2)纯手工测试的工作流程:有详细了解的测试计划,包括测试策略、环境要求、测试进度、要测试的功能、资源和职责、可交付的成果、准出标准以及使用的工具等。在这之后,测试人员编写测试用例,描述步骤和预期。
3)纯手工测试发现bug的处理办法:将实际结果与预期进行比较,如果不匹配则在管理工具中(比如禅道)记录缺陷,并通知研发人员进行修复。当研发修复并标注该问题状态为已解决,测试人员要求证问题现在是否已修复。
为大家更好理解纯手工测试工作,附上流程图如下:
2、纯手工测试,在业务测试中往往有以下弊病:
• 软件复杂度高,回归范围反复评估,造成时间成本上的浪费。往往评估不准确,迭代一个小功能,都有可能对该功能相关的模块进行回归测试。
• 受限于业务方提出的需求,往往整个研发团队对于整体需求的理解较为片面。
• 专业性强,导致没有实际从事该领域经验,仅满足功能流程上的测试,对于异常场景没有思路。
• 测试覆盖不全,往往回归只能是对某个单一场景,保证整体流程走通。
• 往往不能满足实际业务需要,开发的一些功能,不满足业务需要,人话就是”根本没人用“。
• 上线后随着使用场景的丰富,线上问题较多。
三、当前软件的发展介绍,业务测试出路在哪?
从整体来看,“业务测试是测试工程师的核心,也是测试行业中最基础的能力之一”。但是当今软件行业发展已经进入到新的阶段了,具有下面这3个特点:
1)基于云的应用,程序变得越来越普及。
2)用户更喜欢定制服务,业务应用一直承受着满足不断增长的客户期望的压力。
3)开发团队会使用敏捷研发来跟上不断变化的客户需求,持续测试和监控更新。
所以在当前软件行业发展的阶段中,自动化起着至关重要的作用。
上面的三个特点,接下来我们详细展开:
1、业务测新模式上“云”
为了满足大多数专业用户日常生产,从而进行高度定制化开发,企业纷纷选择上“云”:以智能化为平台载体,大规模提供按需使用资源。
上“云”的确是可以驱动流程创新和业务创新,成为企业新的利润增长点,所以各企业推出了基于SaaS的应用平台(SaaS是Software-as-a-Service的缩写名称,意思为软件及服务,即通过网络提供软件服务)。
2、用户更喜欢定制服务,SaaS 满足需求
SaaS 上的应用程序支持应用程序配置,每个客户可根据一组预定义的配置选项将应用程序定制到其设计的程度,所以业务复杂度更高,迭代速度更快。
SaaS 应用程序通常比传统软件更频繁地更新由几个因素促成的:
○ 该应用程序是集中托管的,因此更新由提供商而不是客户决定和执行。
○ 该应用程序只有一个配置,使开发测试更快。
○ 应用程序供应商不必花费资源更新和维护软件的回溯版本,因为只有一个版本。
○ 应用程序供应商可以访问所有客户数据,加快设计和回归测试。
○ 服务提供商可以访问应用程序中的用户行为分析,从而更容易识别值得改进的领域。
要满足SaaS 应用程序频繁更新,产研团队需要敏捷研发...
3、使用敏捷研发,业务测试的出路在于自动化测试
要支持加速功能交付,产研团队就需要敏捷软件开发,也就需要一套软件开发工具和实践来支持频繁的软件发布。
在测试端,纯功能测试因为效率低,已经跟不上敏捷开发需求。
所以学习代码掌握自动化测试,用自动化测试做业务测试,将是业务测试的出路。
四、介绍手工测试一样,我们也来介绍下自动化测试工作:
1、自动化测试工作职责:
○ 通过创建自动运行测试功能的脚本来编写、设计和执行自动化测试;
○ 尽可能多的覆盖核心代码;
○ 确定测试场景的优先级并创建执行计划来实现这些场景;
○ 为自动化过程编写文档,包括测试计划、测试程序和测试用例;
○ 构建测试自动化框架;
○ 在跟踪系统中记录和记录错误;
○ 进行持续集成。
2、自动化需要掌握的技能:
○ 不同自动化测试技术所需的常用计算机语言:Python、Java等;
○ 自动化测试工具:Selenium、TestComplete、Katalon Studio和Ranorex;
○ 适用于 Android、iOS 和跨平台的移动自动化测试工具;
○ 需要强大的编码技能来创建测试的 API 测试工具:REST Assured、RestSharp、jMeter等;
○ 持续集成工具Jenkins、TeamCity、Bamboo等。
3、自动化测试带来的好处
在大数据量的正确性校验中,因为可以模拟多线程的并发,所以自动化具有下面两个优点:
1)能提升测试覆盖率、
2)提高测试精度、
3)能大大的节省人力投入成本。
因这3大优点,所以自动化在软件测试领域当中畅通无阻。目前测试求职时,自动化测试已从前几年的“加分项”变成了“刚需”。测试就业环境已经发生改变
五、如何系统性学习自动化测试
当你感叹这些自动化要掌握的技能,真是既熟悉又陌生的时候,这证明已经在测试领域中逐渐边缘化,随时成为”圈外人“。
既然已经从事这门职业,为什么要浅尝辄止,不深入下去呢?虽然你说对代码不太感冒!但在现在的环境下,依旧是靠自己,突破自我,再创辉煌。
你并不是不知道自己当前所从事的专业领域是否有出路,而是很难下定一个决心,这也是大多数像你一样的人,迷茫的原因。没有一个好的学习方法,不能系统的学习。
今天学一点自动化,明天学一点儿性能,后天学一点儿前端,“信息庞杂”搞得头大。在精细化分工的今天,每个行业其实都是在不断的细分,东学一点,西学一点,学的面很广,知识很杂,没有一个能深入进去的部分。学了也不知道干啥用,怎么用,就很容易从入门到放弃。
你需要系统的去学习,有专业的人对知识点进行剖析。下面系列视频,值得你系统学习下。
如果你是长期从事功能测试工作,可跳过测试理论+Linux数据库+功能测试, 直接从Python阶段开始学起。
敲字不易,如果此文章对你有帮助的话,点个赞收个藏,给作者一个鼓励。也方便你下次能够快速查找。
如果文章对你有帮助,记得点赞,收藏,加关注。会不定期分享一些干货哦......
最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:
这些资料,对于想做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。希望对大家有所帮助……加入我的学习交流群一起学习交流讨论把!!!!