求知 文章 文库 Lib 视频 iPerson 课程 认证 咨询 工具 讲座 Modeler   Code  
会员   
要资料
 
追随技术信仰

随时听讲座
每天看新闻
 
 
目录
软件测试
1.教程
2. 软件测试原则
3. 软件开发生命周期(SDLC)
4. 软件测试命周期(STLC)
5. 软件测试的类型
6. 测试成熟度模型
7. 测试级别
SDLC 模型
1.瀑布模型
2.螺旋模型
3.混合模型
4.原型模型
5. V模型/V和V模型/验证和验证模型
测试的类型
1.手动测试
2.自动化测试
手册的类型
1.白盒测试
2.黑盒测试
3.灰盒测试
白盒技术
1.数据流测试
2.控制流测试
3.分支覆盖测试
4.语句覆盖率测试
5.决策覆盖率测试
黑盒技术
1.决策表
2.全对测试
3.黑盒测试中的因果图
4.状态转换技术
5.用例技术
黑盒的类型
1.功能测试
2.非功能性测试
功能类型
1.单元测试
2.集成测试
3.系统测试
非功能性的类型
1.性能测试
2.易用性测试
3.兼容性测试
测试用例开发
1.测试文档
2.测试场景
3.测试用例
测试技术
1.错误猜测技术
2.等效分区技术
3.边界值分析
测试管理
1.测试计划
2.测试用例审查过程
3.需求可追溯性矩阵
缺陷跟踪
1.软件测试中的错误
2.Bug生命周期
3.测试中bug的严重性和优先级
4.测试环境
5.缺陷管理过程
其他类型的测试
1.回归测试
2.冒烟测试
3.健全性测试
4.静态测试
5.动态测试
6.负载测试
7.压力测试
8.恢复测试
9.探索性测试
10.可视化测试
11.验收测试
12.Alpha 测试
13.Beta 测试
14.数据库测试
15.主机测试
16.Adhoc测试
17.全球化测试
18.变异测试
19.安全测试
20.可访问性测试
21.结构测试
22.批量测试
23.可伸缩性测试
24.稳定性测试
25.峰值测试
26.负面测试
27.正面测试
28.耐久性测试
29.可靠性测试
30.Monkey测试
31.敏捷测试
32.组件测试
33.GUI测试
34.测试策略
软件测试工具
1.软件测试工具
2.测试管理工具
3.缺陷/Bug跟踪工具
4.自动化测试工具
5.性能测试工具
6.跨浏览器测试工具
7.集成测试工具
8.单元测试工具
9.移动测试工具
10.GUI测试工具
11.安全测试工具
12.渗透测试工具
差异
1.自动化测试与手动测试
2.负载测试与压力测试
3.冒烟测试和健全性测试之间的差异
4.系统测试和验收测试之间的差异
5.质量保证与质量控制
6.静态测试与动态测试
7.验证和确认测试
8.Alpha 测试和 Beta 测试
9.黑盒测试与白盒测试与灰盒测试
10.全球化测试和本地化测试之间的区别
11.测试用例与测试场景
12.测试计划 VS.测试策略
13.边界值分析和等价划分之间的差异
14.SDLC VS.STLC
15.Bug, Defect, Error, Fault 和 Failure之间的区别
16.测试和调试之间的区别
17.前端测试 VS.后端测试
18.HLD和LLD的区别
19.BRS vs SRS
20.正面测试和负面测试之间的区别
21.自上而下和自下而上的集成测试之间的区别
22.用例和测试用例之间的区别
23.Monkey 测试 VS Gorilla 测试
24.Stubs和Drivers之间的区别
25.组件测试和单元测试之间的区别
26.软件测试和嵌入式测试之间的区别
27.GUI 测试和可用性测试之间的差异
28.SDET和Tester的区别
29.桌面应用程序测试、客户端-服务器应用程序测试和 Web 应用程序测试之间的区别
30.主动测试
31.什么是API
32.自动化测试
 
 
目录
螺旋模型
来源:Javatpoint     翻译:Alice (火龙果软件)
1484 次浏览
6次  

我们在瀑布模型中面临的最大问题是需要很长时间才能完成产品,并且软件已经过时。为了解决这个问题,我们有一种新的方法,称为螺旋模型。螺旋模型也称为循环模型。

在此模型中,我们逐个模块创建应用程序并移交给客户,以便他们可以在很早的阶段开始使用该应用程序。并且我们仅在模块相互依赖时才准备此模型。在此模型中,我们在各个阶段开发应用程序,因为有时客户会在流程之间给出要求。

螺旋模型的不同阶段如下:

  • 需求分析
  • 设计
  • 编码
  • 测试和风险分析

需求分析

螺旋模型流程从收集业务需求开始。在此,以下螺旋将包括系统要求、单元要求和子系统需求的文档。在这个阶段,我们可以很容易地理解系统要求,因为业务分析师和客户不断沟通。一旦周期完成,该应用程序将部署在市场上。

设计

螺旋模型的第二阶段是设计,我们将规划逻辑设计、架构设计、流程图、决策树等。

编码

在设计阶段的编译之后,我们将进入下一步,即编码阶段。在这种情况下,我们将根据客户的要求开发产品,并获得客户的反馈。这个阶段是指每个周期中实际应用的构建。

这些螺旋对需求非常清晰,应用程序的设计细节被称为具有版本号的构建。之后,这些构建将传输到客户端以供其响应。

测试和风险分析

一旦开发成功完成,我们将在第一个周期结束时测试构建,并在管理风险、检测和观察技术可行性等不同方面分析软件的风险。之后,客户将测试应用程序并提供反馈。

螺旋模型示例

让我们看一个例子来更好地理解螺旋模型:

在螺旋模型中,软件是在小模块中开发的。假设我们有应用程序 A,并且这个 A 应用程序是在 P、Q、R 等不同模型的帮助下创建的。

 

在上图中,

RP: 模块P的需求分析,与RQ,RR类似。

DP: 模块P的设计,以及类似的DQ,DR。

CP: 模块 P 的编码,以及类似的 CQ、CR。

卫生纸: 测试模块 P,以及类似的 TQ、TR。

  • 在P模块中,我们首先得到需求,然后只有我们设计模块。模块 A 的编码部分在测试错误时完成。
  • 下一个模块是 Q,它是在构建模块 P 时创建的。我们遵循与模块 P 中相同的过程,但是当我们开始测试模块 Q 时,我们检查以下条件,例如:
    • 测试 Q 模块
    • 模块Q与P的测试集成
    • 测试模块 P
  • 创建模块 P、Q 后,我们将继续进入模块 R,然后我们将遵循与模块 P 和 Q 相同的过程,然后测试以下条件:
    • 首先,检查模块为 R、Q 和 P
    • 然后,按以下顺序检查模块的集成:
      R → Q、R 和 P → P 和 Q

注意: 一旦多个模块的循环继续,模块 Q 只有在模块 P 正确构建后才能构建,模块 R 类似。

最适合螺旋模型的示例是 MS-Excel,因为 MS-Excel 工作表具有多个单元格,这些单元格是 Excel 工作表的组成部分。由于我们必须首先创建单元格(模块 P),因此我们可以对单元格执行操作,例如将单元格分成两半(模块 Q),将单元格合并为两个,然后我们可以在 excel 表(模块 R)上绘制图形。

在螺旋模型中,我们可以执行两种类型的更改,如下所示:

  • 主要变化
  • 小改动

主要变化

当客户要求对特定模块的要求进行重大更改时,我们仅更改该模块并执行集成和单元测试。为此,我们总是更喜欢一个新的周期,因为它可能会影响现有的模块。主要变化可能是软件的功能。

小改动

每当客户要求对特定应用程序进行微小更改时,软件团队都会进行较小的更改,并且必须在单个周期中同时开发新模块。而且我们从不进行任何新的周期或迭代,因为微小的变化不会影响现有功能,而且还需要额外的资源和时间。次要更改可能是 UI(前端更改)。

可行性研究

可行性研究基于项目的需求,许多人(人力资源,业务分析师,架构)评估项目是否可以完成。要开发一个好的项目,我们应该遵循各种特点,这些特点是基于客户的需求:

序号 方面 描述
1. 法律 公司能否将该项目作为网络法和其他监控协议来处理?
2. 技术 检查可用的机器是否支持该软件?
3. 操作可行性 公司应该能够产生客户给出的操作吗?
3. 经济 公司是否应该能够在给定的预算内完成产品?
3. 时间表 该项目是否应在给定的时间表内完成。

 

螺旋模型的优缺点

序号 优点 缺点
1. 螺旋模型中允许灵活更改 它不适合小型和低风险产品,因为对于较小的项目来说可能很昂贵。
2. 开发可以分布成更小的部分。 这是一个传统的模型,因此开发人员也只做了测试工作。
3. 客户也可以在早期阶段使用该应用程序。 螺旋模型中没有审查过程的要求,也不允许并行的可交付成果。
4. 为开发人员和测试工程师提供更清晰的信息 在螺旋模型中,管理有点困难;这就是为什么这是一个复杂的过程。
5. 它将提供原型的广泛使用。 最大数量的中间阶段需要不必要的文书工作。

您可以捐助,支持我们的公益事业。

1元 10元 50元





认证码: 验证码,看不清楚?请点击刷新验证码 必填



1484 次浏览
6次