功能测试(Functional Testing)是根据产品的需求规格说明书和测试需求列表,验证产品的功能实现是否符合产品的需求规格。它是系统测试过程中最基本的测试,不关注软件内部的实现逻辑。

功能测试的目的主要如下:

(1)是否有不正确或遗漏的功能。

(2)功能实现是否满足用户需求和系统设计的隐藏需求。

(3)能否正确地接受输入?能否正确地输出结果。

(4)验证业务流程是否正确、合理。

以上四个目的在测试过程中并不容易实现。

首先,第一个目的应该是相对比较容易实现的,测试工程师只需要按照需求规格说明书来验证即可。

接着,第二个目的是验证用户的需求是否被正确地实现,但用户的需求不只是那些显式的需求,还包括一些潜在的、隐藏的需求。而测试的难点恰好就是这些隐藏的需求,解决客户隐藏需求最好的办法就是在创建需求规格说明书时,尽量将客户的隐藏需求挖掘出来,但现实中并不是所有的隐藏需求都能被挖掘出来,这时就要求软件测试工程师必须对业务很熟悉,否则在测试过程中就很难发现这些潜在的需求。

再次,第三个目的是验证系统处理输入、输出的正确性,需要注意的是这里所讲的正确的接受输入,不仅仅指有效数据,还包括无效数据的输入,即系统不仅仅要能处理有效数据输入的情况,还应该能处理无效数据输入的情况,这说明在进行测试用例设计时必须考虑这两个方面的数据输入,并且在测试过程中恰恰是输入无效数据容易引起问题。

最后,第四个目的是在测试过程中一个难点,因为这个业务流程在需求规格说明书中不会明确的定义,完全是凭测试工程师的行业经验进行测试,但是如果仅仅靠测试工程师凭行业经验进行测试的话,那么这很难保证产品的质量,所以针对于这个方面的测试更多的是通过Alpha 测试或Beta测试来完成,Alpha 测试与Beta 测试的异同点见表11-1。

通常一个好的功能必须包含以下几个子特性:

(1)适合性。适合性是指系统提供的功能是否好用、是否适合客户使用,适合性的优劣会影响到系统的易用性。

(2)准确性。准确性是指系统能够准确地响应客户的请求。

(3)互操作性。互操作性包括两个方面的内容:一是人机交互,即客户与系统之间的互操作性;二是被测试系统与其他的软件、系统之间的互操作性,也称为兼容性,兼容性的测试将在后续章节中详细介绍。

(4)安全性。安全性是指系统对信息、数据的保护能力,安全性测试将在后续章节中详细介绍。

软件测试之功能测试详细过程相关推荐

  1. 软件测试之系统注册/登录功能测试

    软件测试之系统注册/登录功能测试 **写在前面:测试不是一种目的,而是一种保证软件质量的手段** 根据工作中对系统注册/登录功能的测试经验,粗略总结了一下系统登录/注册功能测试的思路,如下: PS:在 ...

  2. 全程软件测试之测试需求分析与计划

    全程软件测试之测试需求分析与计划 在项目启动之后,就要着手软件项目的计划,包括软件测试计划.软件测试计划是整个开发计划的组成部分,同时,它又依赖于软件组织过程.项目的总体计划.质量文化和方针.在测试计 ...

  3. 全程软件测试之测试需求分析与计划(1)

    在项目启动之后,就要着手软件项目的计划,包括软件测试计划.软件测试计划是整个开发计划的组成部分,同时,它又依赖于软件组织过程.项目的总体计划.质量文化和方针.在测试计划活动中,首先要确认测试目标.范围 ...

  4. ERP软件中功能测试的实用方法

    随着软件产业的发展,软件产品的质量控制与质量管理正逐渐成为软件企业生存与发展的核心,软件测试在软件项目实施过程中的重要性日益突出.在软件测试时,必须建立严格的判断基准,也就是判断软件是否存在缺陷的依据 ...

  5. GNU Radio3.8创建OOT的详细过程(基础/C++)

    GNU Radio 学习使用 OOT 系列教程: GNU Radio3.8创建OOT的详细过程(基础/C++) GNU Radio3.8创建OOT的详细过程(进阶/C++) GNU Radio3.8创 ...

  6. 软件测试之MySQL数据库必知必会,面试必备

    软件测试之MySQL数据库必知必会,面试必备! 一.前言 1.1 数据库概念及分类 1.2 SQL语句概念及分类 1.3 MySQL数据类型 二.常用SQL语句 2.1 数据库相关SQL 2.2 表相 ...

  7. 软件测试网页注册测试,软件测试之网页测试

    软件测试之网页测试 发表于:2009-04-20来源:作者:点击数: 前边有人在论坛里提到过,但我觉得有的方面还考虑的不是很详细,在此补充下 1 UI测试 看页面是否美观养眼(包括页面的布局是否合理, ...

  8. 《Google软件测试之道》目录—导读

    内容提要 Google软件测试之道 每天,Google都要测试和发布数百万个源文件.亿万行的代码.数以亿计的构建动作会触发几百万次的自动化测试,并在好几十万个浏览器实例上执行.面对这些看似不可能完成的 ...

  9. 软件测试之浦发银行面试题

    对于想要面试去银行面试的小伙伴们看过来,小编为大家总结了浦发银行的面试题,其实很多面试题很多公司都差不多.主要看自己如何灵活回答.以下的问题小编之前面试非浦发银行的银行项目也有被问到过,是在一面的时候 ...

最新文章

  1. 如何取消支付宝工资理财
  2. 开发环境中实现Lombok消除Java冗余
  3. 接上,进一步优化,LruCache缓存
  4. 弹出键盘windowsoftinputmode属性设置值
  5. Java技术分享:Java的运行机制
  6. centos-install-kong-cassandra
  7. 4.聚合aggregate
  8. log4j 按天打印到文件夹_log4j日志打印到前一天的日志文件中
  9. Spring-web-MultipartFile上传文件
  10. Running SharePoint on Windows 7(转)
  11. 浏览器处理 前台传递的+时出现问题
  12. ppt插入 html,PPT中嵌入网页的方法:使用webbrowser控件
  13. 如何取消excel密码_教你快速设置/取消Excel文件打开密码,工作中经常用到。
  14. 哪些情况会造成小程序违规或下架
  15. 汉语语句的计算机分析,(计算机专业毕业论文)汉语语法自动分析.doc
  16. [ZT]Inside WINDOWS NT Object Manager
  17. Flask - bootstrap模板使用 和 模板继承
  18. echarts数据传输图表
  19. Linux傲腾DC128G内存设置,Intel发布傲腾DC非易失性内存:3DXpoint、128GB起、服务器专用...
  20. Neo4j入门级学习笔记

热门文章

  1. 中国林科院亚热带林业研究所林木根际微生物博士后招聘启事
  2. 三线表是什么?R语言使用table1包绘制(生成)三线表、使用单变量分列构建三线表、通过topclass参数自定义三线表表格的显示形式(显示为类似斑马线、并将所有列居中,包括包含行标签的第一列)
  3. R语言使用ggplot2包的快速可视化函数qplot绘制分组点图(带状图)并配置分组颜色实战
  4. R语言ggplot2可视化条形图(bar plot)、配置因子变量的全局填充色方案、这样不同数据集相同因子的填充色具有一致性(Fix colors to factor levels)
  5. Python使用matplotlib绘制透明背景的可视化图像并保存透明背景的可视化结果(transparent background)
  6. A Crowdsourcing Method for Correcting Sequencing Errors for the Third-generation Sequencing Data 一种用
  7. RNA-seq最新利器——全长转录组测序
  8. java 获取动态的service_【Android】动态代理在 Retrofit 中的使用
  9. php设置低于设定值不能用,php memory limit怎么设置不限制
  10. linux环境变量管理器,运维 - linux(ubuntu) 环境变量管理 (持续更新)