求知 文章 文库 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.自动化测试
 
 
目录
Monkey 测试
来源:Javatpoint     翻译:Linda (火龙果软件)
2006 次浏览
6次  

在软件开发生命周期 (SDLC) 中,测试阶段起着至关重要的作用,以帮助测试工程师在产品发布前后共同确定产品的质量、性能、一致性、效率和安全性。

众所周知,测试过程是识别特定软件中的错误和缺陷并立即控制它们的最佳方式,因此测试工程师团队会检测到它们。

在本教程中,我们将了解特定类型的软件测试的以下主题,即Monkey测试。

  • Monkey测试简介
  • Monkey测试的属性
  • Monkey测试的使用
  • Monkey测试的类型
  • 智能Monkey测试与哑巴Monkey测试
  • Monkey测试与临时测试
  • Monkey测试的优势
  • Monkey测试的缺点

1. Monkey测试简介

软件测试的独特类型之一是 Monkey测试。它首先在1979年由Glenford J. Myers撰写的《软件测试的艺术》一书中介绍。

它是一种软件测试技术,用户通过随机输入来检查应用程序;这就是为什么它也被称为随机测试。

如果我们没有足够的时间来编写和执行测试,我们将实施 Monkey测试。

它也被称为随机测试,最适合桌面、Web 以及移动应用程序。如果我们使用随机测试或 Monkey测试输入,这是一个节省时间和精力的过程。

Monkey测试通常作为随机的自动化单元测试执行,并为我们提供了从测试结果中有效评估软件可靠性的好处。

Monkey测试主要是自动实现的,用户插入任何随机的无效输入并测试其性能。

如果我们正在执行负载和压力测试, Monkey测试效果很好,或者我们可以,这是一种非常好的方法。

从随机测试中创建或开发的数据还可以用于近似产品一致性。另一方面,不能以这种方式使用各种测试方法来近似软件一致性。

这在测试工程师中很流行,因为他们使用此测试通过提供随机输入并检查其行为来测试应用程序。

使用试探性能检测软件应用程序中的错误和错误是执行 Monkey测试的主要目的。

2. Monkey测试的特点

随后, Monkey测试包括通过提供一些随机数据并检测系统是否失败来测试软件或应用程序。

执行 Monkey测试的关键目的是识别软件中的缺陷和错误,并确保一旦软件产品的整个开发完成,系统就不会崩溃。

Monkey测试或随机测试的一些显着特征如下:

  • 在执行 Monkey测试时,没有规范。
  • 这是一种本能测试,在没有任何精确测试的情况下进行。
  • 当没有定期检测到缺陷时,将实施 Monkey测试。
  • Monkey测试用于列出系统的可靠性和性能。
  • 花在 Monkey测试上的时间和精力相对少于实际的测试工作。
  • Monkey测试的实施确保了系统的可靠性和效率。

3. Monkey测试的使用

  • Monkey测试可以通过开始事务并插入一些随机数据来用于数据库测试。
  • 它也可以在硬件的帮助下进行测试,或者更优选的是,软件来模仿插入随机数据的猴子的活动。
  • 为了测试应用程序的OWASP问题,我们可以使用预编译的随机数据。
  • 4. Monkey测试的类型

    根据其执行方式, Monkey测试分为各种类型。为了快速了解它,我们可以在下图中看到:

    • 哑巴Monkey测试
    • 智能 Monkey测试
    • 聪明 Monkey测试

    现在,让我们一一看一下,以便我们更好地理解:

    哑巴 Monkey测试

    第一种 Monkey测试是哑 Monkey测试。这是最简单和直接的 Monkey测试类型,不知道它们或系统的能力或应用程序的流程。

    在这个测试中,我们可以识别比聪明的猴子更少的错误,但可以天真地发现难以发现的重要错误。

    在这种情况下,测试经理或领导任命一名不了解应用程序特定模块的测试工程师,以便测试产品。

    即使是那些测试工程师也不知道给定的输入是有效还是无效。这就是为什么Dumb Monkey测试也被称为无知猴子。

    换句话说,我们可以说Dumb Monkey不知道应用程序或系统正在维持的工作流程或数据。

    要求测试工程师自动测试应用程序,并在测试工程师认为合适的位置输入随机数据。

    以下特征可以识别哑巴 Monkey:

    • 测试工程师的行为可能就像没有技术知识但正在尝试使用该应用程序的用户一样。
    • 测试工程师可以根据自己的理解测试应用程序,并输入无效的数据。
    • 当测试工程师对应用程序一无所知时。
    • 要查看它是否按预期执行,我们可以记下应用程序的行为。
    • 测试人员不知道输入是有效还是无效。
    • 当测试人员对用户界面和功能没有太多了解时。

    智能 Monkey 测试

    下一种 Monkey 测试是智能Monkey 测试,其中测试工程师完全关注系统或应用程序。

    此外,测试团队知道确切产品的功能,因此提供合适且有效的输入,有助于对产品执行测试。

    此外,智能Monkey 测试知道应用程序的页面将重定向到哪里。

    在智能Monkey 测试中,测试工程师专注于超越应用程序,如果他们发现错误,他们足够聪明,可以报告错误。此外,智能测试是执行负载测试和压力测试的绝佳选择。

    换句话说,我们可以说测试工程师对系统、其目标和功能有一定的了解,测试工程师在系统中导航并提供有效的输入以执行测试。

    聪明 Monkey 测试

    最后和第三种类型的 Monkey测试是聪明的 Monkey测试。在这种类型的 Monkey测试中,测试工程师对系统有很好的了解。

    这种类型的测试还可以识别一些错误,这些错误将来可能会在软件中找到。

    此外,测试工程师知道产品的使用模式,从此以后,他们可以从用户的角度进行测试。

    换句话说,我们可以说聪明的 Monkey测试比智能 Monkey测试领先一步。

    在这种情况下,测试工程师或测试工程师团队被分配执行任务,因为他们对特定软件领域及其功能有完整的了解。

    5. 智能 Monkey测试和哑巴 Monkey测试之间的区别

    让我们在下表中看到智能 Monkey测试和哑 巴Monkey测试之间的一些重要比较。

    6. Monkey测试与大猩猩测试和模糊测试相似吗?

    • 众所周知,大猩猩测试是预先计划的,而 Monkey测试本质上是非常临时的,与大猩猩测试相比,我们必须多次混淆。
    • 如果我们将模糊测试与大猩猩测试和 Monkey测试进行比较,则彼此之间有很大的不同。
    • 关注使用随机选择的数据输入进行模糊测试,而 Monkey测试处理执行测试的随机操作。
    • 因此,我们可以得出结论, Monkey测试不同于其他类型的测试程序,后者有不同的目的。我们可以根据自己的要求选择合适的测试类型,无论是 Monkey测试、大猩猩测试和模糊测试。

    注意:有些人发现 Monkey和临时测试是一种类似的测试技术,这是不正确的,因为临时测试是在没有任何计划或文档工作的情况下执行的。

    为了澄清上述陈述,我们可以区分 Monkey和Adhoc测试。

    7. Monkey测试与Adhoc测试

    让我们在下表中看到 Monkey测试和Adhoc测试之间的一些显着差异:

    8. Monkey测试的优点和缺点

    它是一个软件测试程序,用于分析随机和临时的测试场景。尽管为最终用户和测试工程师提供了各种好处,但Monkey测试有许多缺点,这可能会抑制其积极的能力。

    因此,Monkey测试有一些基本的优点和缺点,如下所述:

    Monkey测试的优点

    以下是Monkey测试的一些显着好处:

    • 不需要熟练的测试工程师来执行Monkey测试。
    • Monkey测试非常划算。
    • 个人可以借助此测试快速对错误进行分类,这可能会显着影响软件的效率和性能。
    • 为了测试软件的可靠性,这是一个很好的方法。
    • Monkey测试技术易于设置和实施。
    • 在Monkey测试期间可以识别新的错误;在整个传统测试中不会发现它们。
    • 这是以临时方式执行压力测试和负载测试的最佳方法。

    Monkey测试的缺点

    以下是Monkey测试的缺点:

    • 评估Monkey测试期间发现的意外问题使此过程非常困难和耗时。
    • 在Monkey测试中,识别出的错误可能超出范围或超出业务需求。
    • 测试工程师无法保证测试用例的准确性,因为他们很难定义确切的测试场景。
    • Monkey测试的实施可能会在对错误进行分类之前花费大量时间,因为它没有任何预定义的测试。
    • 它是随机完成的;这就是为什么测试用例覆盖率不能是具体的。

    9. 总结

    在本教程中,我们了解到Monkey测试是一种相对较新的软件测试,在软件测试工程师中很受欢迎,在某些测试领域非常有益。

    Monkey测试与大猩猩测试和临时测试明显不同。

    Monkey测试分为三种类型的测试,分别是哑巴Monkey测试、智能Monkey测试和聪明Monkey测试。

    在 Monkey 测试中,用户输入随机输入,然后实施测试以检查其性能并了解系统或应用程序是否失败。

    此外,Monkey测试是由测试工程师团队进行的自动化测试,没有任何详细的测试。

    最后,我们可以说Monkey测试是检查软件功能质量和软件性能的最简单方法;由于这种质量,Monkey测试也被称为随机测试。

     

     


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

    1元 10元 50元





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



    2006 次浏览
    6次