当前位置:测试行业动态 → 正文

你知道功能测试和非功能测试有什么区别么?

责任编辑:editor006 作者:三文鱼 |来源:salon36沙龙  2017-11-23 15:52:39 本文摘自:it168网站
功能测试根据需求进行功能上的测试,而非功能测试则针对更广泛的质量问题进行测试。在本文中,Dayana Stockdale将帮助读者弄清这两种测试的差异,并给出一些举例和策略。 功能测试与非功能测试的主要区别 在理解功能测试和非功能测试的区别之前,先需要知道功能性和非功能性需求之间的区别: 功能要求:描述软件系统的行为或执行。 非功能性要求:描述软件系统的性能或可用性。 功能需求将指定某一功能必须执行某个操作,而非功能需求则是可能会指定某一功能执行该操作。功能要求是WHAT;而非功能性要求是HOW。 因此,功能需求测试就是验证软件是否正在执行操作,而非功能测试则有助于验证客户的期望是否得到满足。 你知道功能测试和非功能测试有什么区别么?     功能测试与非功能测试实例 为了使读者能更加清晰的了解两者之间的差异,Dayana将详细介绍一些并行的实例: 你知道功能测试和非功能测试有什么区别么?     功能测试策略 功能测试策略多种多样,手动和自动测试混合使用是确保功能测试覆盖率的最佳方法。 最常见的功能测试策略是黑盒测试方法,测试者不需要审查内部源代码,而是通过测试各种输入组合来验证功能。 以下是一些常用的功能测试技术: 1. 安装测试 — 用于测试桌面或移动应用程序是否正确安装。 2. 边界值分析 — 数值输入边界测试。 3. 等价划分 — 分组测试,以减少类似功能测试的重叠。 4. 错误猜测 — 评估功能问题最有可能被发现,并比其他领域更广泛地进行测试。 5. 单元测试 — 在软件的最小级别上执行测试。不是将系统作为一个整体运行,而是在单元上测试。 6. API测试 — 检查内部和外部API是否正常运行,包括数据传输和授权。 7. 回归测试 — 用于验证新软件更改没有对现有功能(最常见的自动化技术)产生不利影响的测试。 所有的功能测试都有一个特定的输出。所有的功能测试都可以用非常明确的通过或者失败标准来编写。 非功能性测试策略 非功能性测试有时可能会比功能性测试要麻烦很多,因为您正在测试客户对整体质量体验的期望,而不是指定输入数据输出确定的结果。 以下是主要的非功能性测试技术: 1. 负载测试 — 在模拟环境中执行的测试,以测试系统在预期条件(不同数量的用户)期间的行为。 2. 压力测试 — 在资源不足时测试性能,例如salon36沙龙问题或设备上硬盘空间不足。 3. 扩展性测试 — 检查系统的规模,以便随着使用率的增加和性能受到何种程度的影响而进行扩展。 4. 容量测试 — 用大量的数据测试性能,不一定是数量庞大的用户,但可以是一个用户执行高容量的任务,例如多文件上传。 5. 安全性测试 — 进行测试以发现系统受到攻击的脆弱程度,以及数据的保护程度。 6. 灾难恢复测试 — 检查系统在崩溃或重大问题后能在多久时间内的恢复速度。 7. 一致性测试 — 根据某一套标准(无论是行业法规还是公司的标准)来测试软件系统。 8. 可用性测试 — 测试GUI是否一致,以及整个应用程序是否直观且易于使用。 虽然一些非功能性测试技术可以具有通过/失败的标准(如批量测试),但相比之下,其他测试技术能够基于测试人员的意见(如可用性测试)因此更加客观。 你知道功能测试和非功能测试有什么区别么?     倾听客户反馈对于更新非功能性需求至关重要。虽然在收集意见过程中,可能会识别到某些扩展性和安全因素,但客户反馈可以扩展这些检查集合,包括更好地测试应用程序在崩溃后应该如何恢复,或应用程序如何在设备上占用最小的存储空间。 客户反馈有助于进行功能测试的风险评估。但对于非功能性测试来说,用户反馈更有价值,因为反馈有助于设定栅,而功能测试已经设定好了栅。
关键字:功能测试 非功能性 本文摘自:it168网站
你知道功能测试和非功能测试有什么区别么? 扫一扫
分享本文到朋友圈
关于我们联系我们版权声明友情链接广告服务会员服务投稿中心招贤纳士 企业网版权所有©2010-2017 京ICP备09108050号-6
^
salon36