求知 文章 文库 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     翻译:Linda (火龙果软件)
864 次浏览
8次  

单元测试涉及对软件应用程序的每个单元或单个组件的测试。这是功能测试的第一级。单元测试的目的是验证单元组件的性能。

单元是软件系统的单个可测试部分,并在应用软件的开发阶段进行测试。

单元测试的目的是测试独立代码的正确性。单元组件是应用程序的单个函数或代码。用于单元测试的白盒测试方法,通常由开发人员完成。

每当应用程序准备就绪并交给测试工程师时,他/她将开始独立或逐个检查模块或应用程序模块的每个组件,此过程称为单元测试或组件测试。

为什么要进行单元测试?

在测试级别层次结构中,单元测试是在集成和其他剩余测试级别之前完成的第一级测试。它使用模块进行测试过程,从而减少等待单元测试框架的依赖性,存根,驱动程序和模拟对象用于单元测试的帮助。

通常,软件会经历四个级别的测试:单元测试、集成测试、系统测试和验收测试,但有时由于时间消耗,软件测试人员会进行最少的单元测试,但跳过单元测试可能会导致在集成测试、系统测试和验收测试期间,甚至在软件应用程序完成后进行的 Beta 测试期间出现更高的缺陷。

下面列出了一些关键原因:

  • 单元测试可帮助测试人员和开发人员了解代码的基础,使他们能够快速更改导致缺陷的代码。
  • 单元测试有助于文档。
  • 单元测试在开发阶段的早期修复缺陷,这就是为什么在即将到来的测试级别中可能会出现较少数量的缺陷。
  • 它通过迁移代码和测试用例来帮助提高代码的可重用性。

单元测试示例

让我们看一个示例,以便更好地理解单元测试的概念:

对于金额转账,要求如下:

以下是客户提供的应用程序访问详细信息

  • 网址→登录页面
  • 用户名/密码/确定 →主页
  • 要达到金额转移模块,请按照以下步骤操作

贷款→销售→金额转移

在执行单元测试时,我们应该遵循一些规则,如下所示:

  • 要开始单元测试,至少我们应该有一个模块。
  • 测试正值
  • 测试负值
  • 无过度测试
  • 无需假设

当我们觉得达到最大的测试覆盖率时,我们将停止测试。

现在,我们将开始对不同的组件执行单元测试,例如

  • 从帐号(FAN)
  • 收件人账号(TAN)
  • 数量
  • 转移
  • 取消

 

对于FAN组件

 

对于 TAN 组件

  • 提供值,就像我们在从帐号 (FAN) 组件中所做的那样

对于金额组件

  • 提供值,就像我们在FAN和TAN组件中所做的那样。

用于传输组件

  • 输入有效的 FAN 值
  • 输入有效的 TAN 值
  • 输入正确的金额值
  • 点击转账按钮→金额转账成功(确认消息)

对于取消组件

  • 输入FAN、TAN 和金额的值。
  • 单击“取消”按钮→应清除所有数据。

单元测试工具

我们在市场上有各种类型的单元测试工具,如下所示:

  • NUnit
  • JUnit
  • PHPunit
  • Parasoft Jtest
  • EMMA

有关单元测试工具的详细信息,请参阅以下链接:

https://www.javatpoint.com/unit-testing-tools

单元测试技术:

单元测试使用所有白盒测试技术,因为它使用软件应用程序的代码:

  • 数据流测试
  • 控制流量测试
  • 分支机构覆盖率测试
  • 语句覆盖率测试
  • 决策覆盖率测试

如何通过单元测试获得最佳结果?

单元测试可以给出最佳结果,而不会感到困惑,并通过执行下面列出的步骤来增加复杂性:

  • 测试用例必须是独立的,因为如果需求有任何更改或增强,测试用例将不受影响。
  • 单元测试用例的命名约定必须清晰一致。
  • 在单元测试期间,必须在进入 SDLC 的下一阶段之前修复已识别的错误。
  • 一次只能测试一个代码。
  • 在编写代码时采用测试用例,如果不这样做,执行路径的数量将增加。
  • 如果任何模块的代码发生更改,请确保相应的单元测试是否可用于该模块。

单元测试的优缺点

单元测试的优缺点如下:

优势

  • 单元测试使用模块方法,因为可以测试任何部分,而无需等待另一个部分测试完成。
  • 开发团队专注于单元提供的功能以及功能在单元测试套装中的外观,以了解单元 API。
  • 单元测试允许开发人员在几天后重构代码,并确保模块仍然工作而没有任何缺陷。

缺点

  • 它无法识别集成或宽泛级别的错误,因为它在代码单元上工作。
  • 在单元测试中,不可能评估所有执行路径,因此单元测试无法捕获程序中的每个错误。
  • 它最适合与其他测试活动结合使用。

 

 

 


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

1元 10元 50元





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



864 次浏览
8次