求知 文章 文库 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 (火龙果软件)
1069 次浏览
6次  

在本节中,我们将了解批量测试,这有助于我们通过在数据方面插入大量负载来检查应用程序的行为。

我们还要了解了它的过程,为什么我们需要进行批量测试,批量测试的目标,多个示例,批量测试的各种属性,优点和缺点。

1. 批量测试介绍

批量测试属于软件测试。它帮助我们通过插入大量数据负载来检查应用程序的行为,称为批量测试。

在批量测试中,我们将专注于数据速率的数量而不是用户的数量。它也被称为洪水测试。

执行它是为了分析数据库中数据量增加时对系统响应时间和行为的影响。在此测试中,软件会处理大量信息。

需要证明系统没有溢出或数据安全问题的风险。

注意:体积是容量,负载是数量,即负载测试意味着没有。对于用户而言,容量测试意味着数据量。

 

2. 批量测试的目的

实施批量测试的最初目标是发现数据库中数据总量的系统性能。

让我们看看执行批量测试的其他一些目标:

  • 评估系统响应时间

我们可以评估系统响应时间,因为我们知道批量测试是高效的,它可以帮助组织高管确认软件性能没有中断。

  • 对系统的体积进行分类

如果我们确定系统的数量,它可以帮助我们简化可扩展性开发,这在准备应急计划时非常有用。

体积测试为开发人员提供了了解,这有助于他们预测系统可以继续处理多少数据而不会出现故障。

  • 设计可伸缩性计划

我们可以通过执行批量测试轻松设计可扩展性计划。正如我们了解到的那样,体积测试可以帮助企业高管了解我们是否增加了尺寸或积累了更多组件来支持系统。

  • 确保没有数据丢失

在软件测试中,只有通过批量测试,项目团队才能保证随着系统负担的增加和数据库大小的增加,不会丢失数据。

  • 接收有关低、中、高数据负载下的系统性能的见解

实施体积测试的下一个目标是测量系统在中低负载下的性能,以确保其正常工作。在高数据负载下,数据丢失的风险会扩大。

  • 识别系统组件上强制说服的错误

执行批量测试的目的是查找仅在数据负载激增、响应时间增加、系统故障或安全活动时才显示的问题。

3. 批量测试的特点

它包含执行批量测试时必不可少的各种功能:

  • 在开发阶段,仅测试少量数据。
  • 随着时间的流逝,该软件的执行力正在减弱,因为随着时间的推移会有大量数据。
  • 在执行批量测试时,我们确保没有数据丢失,因为如果我们丢失任何数据,我们可能会错过一些重要信息。
  • 大多数情况下,测试数据生成器创建测试数据,这些数据需要在逻辑上准确。
  • 为了分析系统的性能,我们可以使用测试数据。
  • 在批量测试期间测试应用程序的响应时间,以及系统是否在固定时间内响应。
  • 在批量测试中,我们还测试数据是否适当存储,因为如果信息未正确存储,则会相应地将其还原到适当的位置。

4. 为什么我们需要批量测试?

在我们了解批量测试的必要性之前,我们将看到一个批量测试的示例。

假设有一个电子商务 Web 应用程序,通常由 1000 个最终用户使用。在销售或节日期间,在 Web 应用程序上,大约有 40-50k 用户尝试访问 Web 应用程序。

并且应用程序将崩溃,或者数据无法成功加载,这给客户带来了问题。

为了克服这种实时条件,我们需要执行一轮批量测试。以下方面将帮助我们了解批量测试的重要性:

  • 批量测试将帮助我们检测当数据库的卷激增到特定限制时的任何数据丢失。
  • 执行卷测试对于在测试的早期阶段识别问题至关重要,这可能会增加数据库中的数据量。
  • 批量测试可以在管理客户之前快速识别许多系统性能问题。

5. 批量测试有哪些不同的挑战?

在执行批量测试时,我们始终牢记一些事情

因为批量测试中的所有初始想法都需要处理数据。

  • 批量测试处理巨大的数据量

与其他类别的性能测试相比,批量测试处理巨大的数据量。

为了处理大量数据,它需要广泛的数据集和全面的测试工程师团队。程序员还必须处理管理由于定期测试会议的结果而增加的数据。

  • 驻留在数据库中

这是批量测试期间最常面临的挑战,因为我们正在处理关系数据库,这些数据库包含强大的结构和许多相邻的表。

测试人员需要收集各种字段,包括包含大型二进制文件的必需的选修字段,以确保测试数据的高质量。

  • 查看数据类型以及它们之间的连接

对于测试初学者来说,很难了解它们之间的联系、类型之间的差异以及软件的反应。

在批量测试期间,测试专业人员必须处理大量有效、无效、缺失、边界或错误的数据。

6. 批量测试和负载测试之间的区别

在下表中,我们列出了批量测试和负载测试之间的一些重要区别:

7. 批量测试工具

众所周知,与手动测试相比,自动化测试是一个节省时间的过程,并且还提供了精确的结果。

使用批量测试工具的主要优点是我们可以在晚上执行测试,因此,团队成员或其他团队不会受到数据库数据量的影响。

让我们看看一些与批量测试兼容的开源工具:

  • HammerDB
  • DbFit
  • JdbcSlim
  • NoSQLMap

HammerDB

它是全球数据库行业的开源工具和数据库基准测试应用程序。它用于自动化,多线程,还允许运行时脚本。

HammerDB数据库的特点

以下是HammerDB常用的功能:

  • 它是一个完全透明的企业评级软件,没有虚拟用户限制。
  • 它可供所有顶级技术公司使用。
  • 它完全支持各种数据库,如Oracle,MYSQL,SQL Server,PostgreSQL等。
  • 它允许专家级别的支持。
  • 它提供了完整而全面的文档。
  • 它功能齐全,支持Linux和Windows平台。

DbFit

DbFit 是一个支持测试驱动开发的开源工具。DbFit 测试可以用作我们系统行为的现有可执行文档。

DbFit 的特点

DbFit 的一些常用功能如下:

  • 它支持敏捷实践,例如测试驱动开发、重构。
  • 它支持多种数据库类型,如SQL Server,Oracle等。
  • 它帮助我们提高产品的质量、设计和可维护性。
  • 它提供了可读和可理解的语法,从而改善了与非技术人员的沟通。
  • 它提供了带有示例的在线文档。

JdbcSlim

另一个批量测试工具是JdbcSlim,其中数据库语句和查询很容易集成到Slim FitNesse测试中。它主要强调保持配置、测试数据和 SQL 命令的区别。

JdbcSlim的特点

以下是JdbcSlim的常用功能:

  • JdbcSlim 框架可供了解 SQL 语言的开发人员、测试人员和业务用户使用。
  • 它支持 JDBC 驱动程序的所有数据库。
  • 它还确保需求是独立于执行编写的,并且易于用户理解。

NoSQLMap

NoSQLMap是一个开源的Python工具,旨在自动插入爆发并破坏数据库配置以评估威胁。

8. 批量测试的优点

批量测试的一些好处如下:

  • 它有助于节省用于应用程序改进的维护成本。
  • 它仅适用于MongoDB数据库。
  • 它有助于及早发现瓶颈。
  • 它支持更快地启动可伸缩性计划。
  • 批量测试确保系统能够实际使用。

9. 批量测试的缺点

以下是批量测试的缺点:

  • 通过使用批量测试,不可能对现实世界中使用的内存进行精确划分。
  • 熟练的数据库性能测试团队对于获得批量测试至关重要,这将成为项目的额外费用。
  • 真实环境的单个副本是困难和复杂的。
  • 执行全面的批量测试需要花费大量时间,该测试涵盖了所有测试方案、创建脚本和执行这些脚本,这可能会延迟应用程序的发布时间。

10. 总结

在本教程中,我们将学习批量测试用于分析高数据负载的系统性能。它是一种非功能测试。

批量测试是手动执行的,也可以在一些自动化工具的帮助下执行,以检查系统性能。

批量测试非常重要,其挑战相对复杂。在实现它之前,我们需要对特定概念以及数据库语言有完整的了解。

如果任何测试初学者尝试执行批量测试,他们需要使用一些工具并执行一些测试用例,这将有助于我们在实时使用之前了解批量测试的概念。

 

 


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

1元 10元 50元





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



1069 次浏览
6次