Javatpoint标志
Javatpoint标志

单元测试

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

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

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

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

为什么要进行单元测试?

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

单元测试

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

以下是一些重要的原因:

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

单元测试的例子

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

单元测试

量转移,具体要求如下:

1. 量转移
1.1 从账号(FAN)→文本框
1.1.1 FAN→只接受4位数字
1.2 账户号(TAN)→文本框
1.2.1 " TAN→只接受4位数字
1.3 金额→文本框
1.3.1 金额→接受最多4位数字
1.4 转移→按钮
1.4.1 传输→启用
1.5 取消→按钮
1.5.1 取消→启用

下面是由客户提供的应用程序访问细节

  • URL→登录页面
  • 用户名/密码/OK→首页
  • 按以下步骤进入金额转账模块

贷款→销售→金额转移

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

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

当我们觉得最大测试覆盖率达到了,我们就停止试验。

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

  • 来自账号(FAN)
  • 转到帐户号码(TAN)
  • 转移
  • 取消
单元测试

对于FAN组件

描述
1234 接受
4311 错误信息→账户是否有效
空白 错误信息→输入一些值
5位/ 3位 错误信息→只接受4位数字
字母数字 错误信息→只接受数字
封号 错误消息
复制并粘贴该值 错误信息→输入值
FAN和TAN也一样 错误消息

对于TAN组件

  • 提供值,就像在从账号(粉丝)组件

对于金额分量

  • 像在FAN和TAN组件中那样提供值。

对于传输组件

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

对于取消组件

  • 输入“FAN”、“TAN”和“amount”。
  • 点击“取消”按钮→清除所有数据。

单元测试工具

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

  • NUnit
  • JUnit
  • PHPunit)
  • Parasoft Jtest
  • 艾玛

有关Unit测试工具的更多信息,请参考以下链接:

//m.047138.com/unit-testing-tools

单元测试技术:

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

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

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

按照下面列出的步骤,单元测试可以在不混淆和增加复杂性的情况下获得最佳结果:

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

单元测试的优点和缺点

单元测试的优点和缺点如下:

优势

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

缺点

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

下一个话题 集成测试





Youtube 观看视频请加入我们的Youtube频道:现在加入

反馈


帮助他人,请分享

脸谱网 推特 pinterest

学习最新教程


准备


热门的技术


B.Tech / MCA






Baidu
map