软件测试技术的选择及不同测试方法【乐搏TestPRO】

测试技术是指测试软件或软件一部分的方法或方式。每种测试技术都有其自身的优势。不同的技术针对不同类型的缺陷。因此,说一种技术是最好的是错误的。根据软件及其要求,一种测试技术可能比另一种更适合用于该目的。有时,结合使用不同的测试技术可能是测试软件的好方法。(欢迎添加软件测试学习交流群QQ群:636859964,群文件可以下载35G软件测试学习视频文档资料)

一、讨论确定应使用哪种测试技术的各种因素:

  时间限制–根据分配给测试的时间线,它有助于消除and/or选择测试类型。例如,测试时间较短的软件很可能会跳过耐力测试。

  预算–预算可能会限制测试的不同方面,例如,资源,测试用例等,可能会影响测试技术的选择。

  客户提供的规范–有时,客户可以针对需要进行哪些测试提供清晰的指导。他们也可以进行干预,以消除在计划期间确定的测试类型。

  涉及的风险–基于软件的风险评估,可以选择测试技术。例如,医疗和金融领域属于高风险领域,需要对其软件进行全面测试。测试方法应基于风险,并且必须进行性能测试。

  系统需求规范–根据业务实体草拟的文档和需求,确定测试技术,例如系统测试,临时测试等。例如,如果没有提供特定要求,则测试人员可以进行临时测试。

  缺陷:它基于该软件的先前版本中发现的缺陷。下一版本的测试套件中可能包含回归测试,以重新检查受影响的区域。

  软件开发生命周期 –软件遵循的SDLC也是测试技术的决定因素。例如,探索性测试更有可能用在迭代测试方法中,而不是瀑布方法。

  软件的目的–它可能包括最终用户。例如,必须测试为残疾人或残障人士设计的软件的可访问性。

二、讨论一些测试技术,它们的好处以及最适合的测试方法:

  静态测试:

  所有软件测试中都应包含此测试技术。它有助于在正式测试开始之前检测缺陷。它涉及在SDLC早期阶段测试或检查文档或代码,而无需执行任何实际操作。该技术通过以下方式帮助软件开发:

  查需求或设计,以发现任何遗漏或模糊的需求和不可行的设计。

  对代码的静态分析可以帮助您发现结构缺陷,而无需实际执行。

  众所周知,SDLC中越早发现缺陷,修复它的成本就越低。此技术需要业务和领域方面的专业知识。另外,由于预计团队成员会参与各个阶段,因此在测试过程中会加大工作量。

基于规范的测试技术:

此技术是确保已满足所有要求并且期望与实际匹配的最佳方法。它基于文档中起草的规范或软件要求。也称为黑匣子测试。根据开发期间使用的逻辑,可以选择以下黑盒技术之一:

等效分区测试:当测试条件可以划分为不同的集合时使用。例如,要测试提供折扣的电子商务网站,例如1000卢比,5%的折扣,1500的10%和2500或以上的20%,可以使用等价分区将测试划分为0 -999、1000-1499、1500-2499&> = 2500。可以测试每个分区的值,而不是测试整个范围。

边界值测试:在上面的示例中,可以通过涉及每个分区的边界值以具有更大的覆盖范围来优化测试。

决策表:它主要用于测试财务应用程序。最好的例子是贷款申请,其中取决于对不同问题的答案的组合,例如被贷款人是否在同一家银行有一个帐户,如果他已经获得了其他贷款等,则计算最大贷款额。

状态转换图:用于测试网站的在线表单提交。通过单击“下一步”按钮,根据所填写的详细信息,将输出不同的输出。例如,如果正确填写了所有详细信息,则将显示下一页,如果信息不正确或未填写必填信息,则会显示一条错误消息。

诸如压力测试,负载测试等非功能性测试也属于该测试技术。

基于风险的测试技术:

此测试技术对于金融和医疗领域非常重要。它用于测试系统的断点及其在这些条件下的响应。如果临床研究组织的系统崩溃了并且数据丢失了,那么可能会浪费很多测试试验和多年的工作。性能测试属于这种技术。

基于结构的测试技术:

也称为白盒测试。它需要代码知识,并且通常由开发人员执行。它有助于提高代码质量,因为使用此技术可以发现无效和冗余代码。它还有助于在早期发现缺陷,并可以立即修复。单元测试属于基于结构的技术类型。

基于缺陷的测试技术:

该技术专注于缺陷最大的区域。测试案例是根据过去发现的缺陷编写的。回归测试属于此类别。它不能用作唯一的测试技术,但可以为整个测试提供更多的覆盖范围。

基于经验的测试技术

它基于测试人员的经验,背景和技能。测试是根据可能出问题或可能存在缺陷的想法进行的。诸如临时测试和猴子测试之类的测试方法都属于该技术。此测试技术通常用于低风险系统或要求不明确或不够充分的情况。如果有时间限制并且没有足够的时间进行测试,也可以使用它。

  结论:

  从上面的讨论中,我们可以得出结论,每种测试技术都有其自身的优缺点。没有技术比其他技术更好。它取决于时间,预算,客户端,软件类型等因素,应根据其对软件及其要求的适用性进行选择。

今天的先分享到这里,每天持续更新软件测试行业趣闻、动态、技术干货,欢迎添加关注~~

扫码↓领取本文中的涉及的视频资料,以及30G软件测试学习大礼包,共计75节课,内容涵盖功能测试、性能测试、自动化测试、测试框架、安全测试、接口测试、测试面试题、测试简历模板等。