2016年的软件测试已经远远超出了重复的击键和长时间检查一种结果与另一种结果的范围。 自动执行大量测试的能力使您的团队可以将精力集中在人为因素上,并提高解决方案的用户体验。
设备机柜不再限制可在其上测试新软件的外形尺寸和操作系统。 诸如Xamarin Test Cloud之类的云测试平台提供了允许进行更严格和自动化质量检查的选项。
对于许多质量实践而言,这并非易事。 现在,开发团队比以往任何时候都需要质量分析人员,他们应该从哲学上接受这种新的软件测试最佳实践世界所提供的功能。
下载我们对软件测试电子书的未来。
1.不要推卸责任。 雇用一个致力于软件质量的团队(或合作伙伴)。
如果测试人员从一开始就不致力于验证解决方案的逻辑和经验,那么这个角色将落在您的PM和BA(甚至您的客户)身上,他们已经掌握了全部的能力。 使测试适合已经完成的角色并不能使他们的理智或项目质量得到任何帮助。
测试人员应在项目开始时以专门的身份参与。 与其管理人员或流程,不如管理人员或流程,他们应专注于识别开发思维中的逻辑差距,以在生命周期的后期绕过麻烦。
2.避免混乱。 从一开始就定义您的测试过程。
根据项目类型,解决方案的技术要求和项目需求,可以使用各种不同的测试来评估质量。
基于故事的测试
基于故事的测试用例基于正面和负面的用户故事场景。 它们包括:步骤和动作,预期结果,执行类型(手动/自动),测试重要性(高,中,低),添加测试用例时的冲刺和浏览器执行(IE / Fx / Chrome / Tablet)。 这也可以扩展到OS,尽管它现在的重要性不如15年前。 基于故事的测试可在整个软件生命周期中使用。
使用此方法,测试按其相对重要性级别进行分类。
高。 此功能对软件至关重要。 如果它不起作用,则用户将无法操作系统。 一些示例包括:登录系统,忘记密码并添加新的参与者。
介质。 分类为“中级”的测试可以验证对用户来说很重要的功能,但不能阻止他们操作系统。 示例:过滤,否定方案和极端情况。
低。 将该类别中的测试用例分配为低优先级。 被测试的功能很少更改或为静态,例如:与我们联系。
冲刺测试
该方法基于错误修复和每次冲刺期间实施的用户案例来分析代码的风险。
冲刺测试的方法首先涉及对开发变更的评估。 这些可能会详细说明新开发如何影响周围的功能,或者该开发是否会导致用户界面的新更改。 在对开发变更有了了解之后,测试人员会跟进开发团队,以讨论任何可能受影响的领域。
根据上述确定选择测试用例,并在代码冻结之前的sprint中执行测试用例。 目标? 要在sprint测试期间发现任何潜在问题,请在代码冻结之前确定优先级并解决它们。
功能/代码冻结
功能和代码冻结发生在软件生命周期的后期。 在此阶段,将不进行与新功能实现有关的进一步修改。 在部署到生产之前,功能通常会冻结一次冲刺。 但是,冻结期的长短取决于项目的复杂性和规模。 在发布之前添加新功能会带来巨大的质量风险。
同样,在此期间实施新的用户案例会增加引入测试人员可能会在发布急忙中错过的回归缺陷的风险。
在特征冻结阶段,将重新测试缺陷,然后开始进行回归测试。 从所有测试用例中选择一个好的策略是:
- 常用功能
- 过去已显示许多错误的功能
- 复杂功能
- 在开发过程中多次更改的功能
然后从上述标准中选择测试用例,并在冻结代码之前执行这些用例。
无论您的团队决定采用哪种测试策略,都可能是混合的(我们经常使用这三种方法的混合),直接建立角色和职责以及在每种环境中进行清晰测试的准则。
3.连续性总是胜利。 在整个软件生命周期中进行回归测试。
回归测试属于关键软件测试最佳实践的类别。 它应从项目的开始到结束完成,具体取决于可用资源和执行预算。
避免噩梦的唯一方法是在部署前几天就发现涉及需要需要数周的工作才能补救的各种功能的缺陷,而这始终是评估和修复已发现的错误。 自动化简化了该过程,并且特别有效地每日或每周报告回归影响。
观看我们的Xamarin测试云演示。
4.不要拖延。 在生产发布之前尽快完成性能测试。
在立即进入测试之前,请定义成功要求和指标。 还必须设置负载方案,定义被测方案以及与每个交互进行交互的预期用户。
测试应在生产环境的精确副本中执行。 执行完方案后,分析结果以确定系统出现故障的地方(如果有的话)或需要优化的地方。 然后,根据需要对服务器或代码进行调整。
性能测试的类型
负载测试。 将需求放在系统或设备上并评估其响应。 执行负载测试以确定系统在正常和预期峰值负载条件下的行为。 它有助于确定应用程序的最大操作能力以及任何瓶颈,并确定导致降级的元素。
压力测试。 通常用于了解系统内容量的上限。 完成这种测试是为了确定系统在极端负载下的鲁棒性。 它可以帮助应用程序管理员确定只要当前负载远高于预期的最大值,系统是否就能充分发挥作用。
速度/有效性测试。 此过程可能涉及在实验室中完成的定量测试,例如测量系统运行时的响应时间或MIPS(每秒数百万条指令)的数量。
5.打开沟通渠道不只是必要的。 它决定成功。
无论您是与外部合作伙伴合作还是与内部部门合作,项目的成功与否以及完善不起作用的流程的能力都取决于所有利益相关者对整体项目质量的敏锐理解。 最好的软件测试团队每周都会提供缺陷趋势报告。 它应该指出已发现和已解决的问题,以帮助您的项目团队可视化并评估开发的整体稳定性。
下载我们的软件测试电子书,以访问交互式缺陷跟踪模板。
尤其是在与合作伙伴一起工作时,共享测试计划,因此每个人都基于相同的基础知识进行工作。
在采用最新的软件测试最佳实践与依靠经过实践检验的方法之间找到平衡,是在过渡到更有效,更全面的方法时管理软件开发项目成本的关键。

单击此处 以访问我们所有的免费资源和更多信息。