功能测试与非功能测试


软件测试大体分为功能测试和非功能测试。
编程

让咱们详细讨论这些测试类型,以及功能测试和非功能测试之间的确切差别。 安全




什么是功能测试?

功能测试是测试被测软件或应用程序的“功能”。微信

它测试了被测软件的行为。根据客户的需求,称为软件规范或需求规范的文档将用做测试应用程序的指南。网络

根据数据雕刻测试数据,并准备一组测试用例。而后在真实环境中对软件进行测试,以检查实际结果是否与预期结果同步。该技术被称为黑盒技术,一般是手动执行的,在发现错误方面也很是有效。闭包

如今让咱们探索功能测试的类型!!
编辑器

功能测试的类型

下面列出了各类类型的功能测试。函数式编程

冒烟测试:

在实际系统测试以前执行此类测试,以检查关键功能是否正常运行,以便进行进一步的普遍测试。函数

反过来,这节省了从新安装新版本的时间,而且在关键功能没法正常工做时避免了进一步的测试。这是测试应用程序的通用方法。工具




健全性测试:

这是一种测试,其中仅测试特定功能或已修复的错误,以检查功能是否正常运行,并查看是否因为相关组件的更改而没有其余问题。这是测试应用程序的特定方法。性能

集成测试:

当软件的两个或多个功能或组件集成在一块儿造成一个系统时,将执行集成测试当组件合并成一个总体时,它基本上检查软件的正常功能。

回归测试:

在修复了在第一轮测试中发现的错误以后,在收到软件的构建版本以后执行回归测试。它会验证错误是否已修复,并检查整个软件在所作的更改中是否工做正常。

本地化测试:

这是一个测试过程,用于检查软件使用客户端要求的其余语言转换为应用程序时的功能。

        什么是本地化测试?

        本地化是指使产品,应用程序或文档内容适应特定区域或地区的文化,语言和其余要求。

        本地化缩写为l10n,其中10是l和n之间的字母数。当想到本地化时,想到的是应用程序的用户界面和文档采用特定的语言或语言环境。可是本地化不只限于此。

        在本地化应用程序时,将自定义如下重要领域:

  • 日期和时间格式(包括数字格式)

  • 使用的货币

  • 键盘用法

  • 排序,对齐和整理数据

  • 配色方案,符号和图标

  • 在给定文化中,文本和图形可能被视为敏感或可能被误解。

  • 多种法律要求

        本地化的主要目的是使产品的外观和感受对目标受众而言,看起来像是专门为知足他们的需求而建立的。

用户验收测试

用户验收测试中,会考虑用户的易用性,根据用户的温馨度和接受程度对应用程序进行测试。

实际的最终用户或客户端将得到一个试用版,以在其办公室设置中使用,以检查该软件是否在实际环境中按照其要求运行。该测试在最终启动以前进行,也称为Beta测试或最终用户测试。

什么是非功能测试?

有一些方面很复杂,例如应用程序的性能等,而且此测试检查要测试的软件的质量。在各类不利状况下,质量主要取决于产品的时间,准确性,稳定性,正确性和耐用性。

用软件的术语来讲,当一个应用程序在任何条件下都能按照用户的指望平稳,有效地运行时,就能够说是可靠的应用程序。基于质量的这些方面,在这些参数下进行测试很是关键。这种测试称为非功能测试。

手动测试该类型是不可行的,所以使用了一些特殊的自动化工具来对其进行测试。

推荐工具: LoadRunner,JMeter等。

非功能测试的类型

下面给出了各类类型的非功能测试。

性能测试:




#1)负载测试:预期应处理特定工做负载的应用程序会在描述特定工做负载的真实环境中测试其响应时间。通过测试,它能够在规定的时间内正常运行,而且可以处理负载。

#2)压力测试:压力测试中,应用程序会承受额外的工做负载,以检查其是否有效运行并可以按要求处理压力。

示例:考虑一个通过测试能够检查用户访问高峰时其行为的网站。可能存在工做负载超出规范的状况。在这种状况下,网站可能会失败,减速甚至崩溃。

压力测试是使用自动化工具检查这些状况,以建立工做负载的实时状况并查找缺陷。

#3)卷测试:卷测试下,经过提供实时环境来测试应用程序处理卷中数据的能力。该应用程序在不利条件下通过了正确性和可靠性测试。

#4)耐用性测试:耐用性测试中,软件的耐用性是以可伸缩的方式反复重复且始终如一的负载流进行测试的。当加载一致的工做负载时,它将检查软件的耐用性。


                                         



经过解决这些问题并相应地找到优质产品的解决方案,全部这些测试类型均可以使该软件在任何实时状况下均无错误,无崩溃地运行。

可用性测试:

在这种类型的测试中,将对用户界面的易用性进行测试,并查看其界面友好程度。

安全测试:

安全测试旨在检查软件在网络上免受恶意攻击的安全性。此测试中要测试的关键领域包括受权,用户身份验证以及他们根据角色(例如管理员,主持人,做曲者和用户级别)对数据的访问。

所以,在了解了定义以后,就能够清楚地了解功能测试与非功能测试之间的区别。

功能测试与非功能测试之间的区别

功能测试 非功能测试
它测试产品的功能。它检查应用程序的操做和动做。 它检查应用程序的行为。
功能测试是根据业务需求进行的。 非功能测试是根据客户的指望和性能要求进行的。
它测试实际结果是否按照预期结果工做。 它检查响应时间以及在特定条件下软件的速度。
它是手动执行的。
示例:黑匣子测试方法。
使用自动化工具进行测试更可行。
示例:Loadrunner。
它根据客户要求进行测试。 它根据客户的指望进行测试。
客户反馈有助于下降产品的风险因素。

客户反馈对于非功能性测试更有价值,由于它有助于改善功能,并使测试人员了解客户的指望。

它正在测试软件的功能。 它正在测试软件功能的性能。
功能测试具备如下类型:
•单元测试
•集成测试
•系统测试
•验收测试
非功能测试包括:
•性能测试
•负载测试
•压力测试
•容量测试
•安全测试
•安装测试
•恢复测试


可读代码编写炸鸡四(上篇) - 来写注释
送书 | Selenium3+Python3自动化测试项目实战从菜鸟到高手
今天我又带来了一款超好用的百度网盘高速下载器~附软件资源
LeetCode47, 全排列进阶,若是有重复元素怎么办?
Python——带你五分钟了解函数式编程与闭包

扫描二维码

关注更多精彩





本文分享自微信公众号 - 软件测试test()。
若有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一块儿分享。

相关文章
相关标签/搜索