之前做持续集成环境时,对于集成测试、功能测试、系统测试...有很多的迷惑,今天刚好看到了一篇这方面的文章,共享之。
---------------------------------------------------------
在软件测试生命周期中定义了很多术语,这篇文章将总结所有这些术语(我所了解的)。这其中的一些可能跟其他地方的定义不完全一致,仅仅是我的理解。如果您有什么疑惑请让我知道。
本文所说的软件测试生命周期是基于组件的java web应用。
各种测试概念对照表
测试概念名称
|
目标
|
范围
|
所有人
|
是否该持续集成
|
工具
|
备注
|
单元测试 |
验证源代码单元能够正确工作 |
class |
开发人员 |
是 |
JUnit |
应该产生100%的代码覆盖率报告 |
功能测试 |
面向代码,通过组件内示例数据测试特征 |
class |
开发人员 |
是 |
JUnit |
应该模拟依赖接口 |
集成测试 |
依赖一定的环境进行一些路径覆盖测试 |
components |
开发人员 |
可选 |
JWebUnit
TestNG
|
如果测试很快并且环境依赖可以很容易的自动安装,可以包含在持续集成中 |
冒烟测试 |
确保关键功能运行 |
application |
开发人员 |
否 |
JWebUnit
TestNG |
代码提交给测试人员前运行,对于web-app模块等同于集成测试 |
回归测试 |
寻找衰退的bugs |
application |
测试人员 |
否 |
Selenium |
重新运行之前版本运行过的测试 |
完备性测试 |
集中在修复的bugs和新特性上 |
application
|
测试人员 |
否 |
Selenium |
为新特性增加新的测试用例 |
系统测试 |
针对功能需求规范(FRS)、系统需求规范(SRS)测试整个系统 |
application
platform |
测试人员 |
否 |
Selenium |
可能包括更多测试,像可用性测试 |
平台测试 |
在不同的硬件和软件平台上运行 |
application
platform |
测试人员 |
否 |
Selenium |
|
性能测试 |
通过采集应用数据消除瓶颈 |
application
platform |
开发人员 |
否 |
JMon,ab,
httperf,JMeter
|
|
负载测试 |
暴露非表面bugs,确保达到性能指标 |
application
platform |
团队 |
否 |
ab,siege
httpref
|
负载测试有时叫做大数据量测试,或者耐力测试 |
压力测试 |
通过耗尽资源或者删除资源来尽力破坏系统 |
application
platform |
测试人员 |
否 |
ab,httpref |
也叫拒绝测试或者恢复测试 |
用户验证测试 |
需要的业务功能和正确的系统功能的一个最终验证,在类实际环境中进行 |
application
platform |
客户 |
否 |
客户决定 |
也叫拒绝测试或者恢复测试
|
稍微补充一下:
回归测试:针对以前的所有case都运行,不管以前出过bug还是正确,其主要目的是寻找那些因为功能的改变对其他功能的影响bugs。
测试选择
-------------------------------------------------------------------
需要进行哪种测试依赖于你的项目。对于那种最简单的web项目,仅需要单元测试和系统测试。越测试越自信。
英文原文:
http://duguo.org/en/The_full_test_life_cycle_of_software
分享到:
相关推荐
软件测试的概念汇总包括软件测试的定义、软件测试的类型、软件测试的方法、软件测试的工具、软件测试的过程等方面。软件测试的定义是指通过对软件的测试和验证,确保软件产品的质量和可靠性。软件测试的类型包括黑盒...
软件测试知识点汇总 本资源摘要信息涵盖了软件测试的概念、测试对象、测试类型、软件问题分类、测试技术等方面的知识点。涵盖了软件测试的整体流程,从软件测试的概念到测试类型和技术,详细解释了每个方面的知识点...
软件测试面试和笔试题汇总的知识点涵盖了软件测试和算法的核心内容,通过分析给定文件中的【部分内容】,我们可以提炼出以下重要的知识点: 1. 软件测试基本概念:了解软件测试的定义、目的和重要性,包括不同类型...
在软件开发过程中,软件测试是不可或缺的一环,它确保了产品的质量和用户体验。这份"软件测试资料汇总-共享资源"提供了一系列宝贵的资料,旨在帮助软件测试人员提升技能,解决问题,以及更好地理解和执行测试任务。...
1. **软件测试基础**:这部分通常包括对软件测试的定义、目标、重要性的理解,以及软件生命周期中的测试阶段,如需求分析、设计、编码、测试和维护等。 2. **测试类型**:包括单元测试、集成测试、系统测试、验收...
软件测试标准和测试用例汇总.pdf 软件测试是一种对软件产品的质量验证和提高的手段,它在软件开发过程中扮演着非常重要的角色。软件测试标准是指软件测试的规则、程序和要求,它们指导软件测试的实施,使软件测试...
软件测试专业名词解读 ...软件测试专业名词是软件测试中的一种重要概念,旨在描述软件测试的过程和活动。了解这些专业名词可以帮助开发者更好地理解软件测试的过程和活动,从而提高软件测试的效率和效果。
软件测试面试题汇总 软件测试是一种确保软件产品质量的重要过程,涵盖了从需求分析到产品交付的整个生命周期。...这些知识点是软件测试中非常重要的概念和技术,测试员需要具备这些知识和技能,以确保软件产品的质量。
软件测试是软件开发过程中的关键环节,其目的是发现并修复软件中的错误、缺陷和不足,以确保软件的质量和性能满足用户需求。软件测试的主要原则包括:尽早介入测试、全面覆盖测试范围、彻底测试是不可能的、测试应...
为了提高测试效率和准确性,软件测试过程中常常会使用到各种测试工具,包括但不限于: - **自动化测试工具**:如Selenium、Appium等,用于自动化执行测试用例。 - **性能测试工具**:如LoadRunner、JMeter等,用于...
【软件测试资料汇总】 在软件开发过程中,软件测试扮演着至关重要的角色,它确保了产品的质量和性能。以下是一些核心的测试概念和方法: 1. **测试基础**:测试是评估软件是否符合预定义需求的过程。它包括了理解...
软件测试学习过程是软件测试工程师的必备知识,涵盖软件测试的各个方面,包括软件测试的概念、软件测试环境、虚拟机的使用、数据库理论、软件测试流程、软件测试文档、软件测试经历汇总等。以下是软件测试学习过程的...
这份资料涵盖了软件测试的基础概念、测试流程、方法论以及实际操作技巧,旨在帮助读者建立起系统的软件测试知识体系。 一、软件测试简介 软件测试是验证和确认软件产品是否满足预定需求的过程,其目标是发现并修复...
软件测试的基础涉及理解测试的目的、类型和生命周期。测试的目的是验证和确认软件是否满足既定的需求和规格。测试类型包括功能测试(检查软件是否按照预期工作)、性能测试(评估软件在不同负载下的表现)、安全性...
《GBT 15532-2008 计算机软件测试规范》作为一项国家标准,对于软件测试工程师来说是必备的指南之一。它不仅为软件测试工作提供了明确的指导,还帮助组织制定测试规范或测试指南,进一步确保了软件产品质量及测试...
在软件开发过程中,软件测试是不可或缺的一环,它旨在确保产品的质量、稳定性和可靠性。本文将深入探讨软件测试的理论知识,为学习者提供全面的理解和指导。 首先,我们需要了解软件测试的基本概念。软件测试是一种...
以下是一些常见的软件测试面试题及答案,涵盖了多个关键概念和实践: 1. **问:你在测试中发现了一个 bug,但是开发经理认为这不是一个 bug,你应该怎样解决?** 答:首先,详细记录你的发现,包括重现步骤、预期...
在软件开发的生命周期中,软件测试是至关重要的一个阶段,它确保产品的质量,发现并修复潜在的问题,从而提高用户满意度。 软件测试的基本理念在于验证和确认软件产品是否满足既定的需求和规格。测试过程通常分为几...
通过深入学习这些知识点,并结合具体的软件测试案例,你将在期末考试中展现出对软件测试的深刻理解和应用能力。请仔细研读提供的复习资料,加深对每个概念的理解,为即将到来的考试做好充分准备。