`
kuwoleft
  • 浏览: 1074945 次
文章分类
社区版块
存档分类
最新评论

使用猴子测试工具(6)

 
阅读更多

使用猴子测试工具(6)

陈能技

2007-11-29

使用有用的笨猴子

我在若干年前开始使用笨猴子,在Windows NT 4.0的产品周期中。我的团队使用一些商业工具作为测试的引擎来寻找操作系统的bug。我们为好几百个流行的应用程序开发了一个自动化的测试套件,并且在操作系统的产品周期中持续地运行它们。但是还有上千的应用程序,如果我们有时间和测试人员来为它们创建测试的话。某些测试能找到很好的bug,但我们需要更廉价的测试方式。

我们尝试用笨猴子来测试那些应用程序。我们的笨猴子能理解Windows的基本元素。他们知道菜单,他们会选择找到的菜单选项。他们也会识别出普通的Windows控件,例如命令按钮、选择框、输入框等。他们为每一个控件运行一组预先定义的测试来确保它是正常工作的。他们还能识别出一些普通的命令按钮(例如“OK”和“Cancel”),而那些“久经世故”的猴子能自动调整自己以适应不同的本地化版本的Windows

我们用几种流行的自动化工具来创造猴子。虽然我们组关注在Windows操作系统,但是实际上类似的猴子能为其他GUI操作系统而创建出来,使用那些操作系统版本的自动化工具。

拥有GUI悟性的猴子能操作很多Windows应用程序。但是一些应用程序依赖个性化定制的控件来向用户暴露他们的功能。大部分自动化工具在测试那些应用程序上存在困难,因为工具不能找到那些控件。如果自动化工具不能找到这些控件,则猴子也不能找到它们。我们通过几种方法来处理这种问题:

n 我们让猴子在每次碰到一些新的窗体的时候随机地点击几下。有时候猴子会点击到其中一些隐藏的界面元素,从而改变程序的状态。

n 如果程序有一些有趣的区域,例如工具栏,对猴子来说是不可见的话,我们让它集中点击那些区域。

n 如果应用程序依赖用户做很多的鼠标和键盘操作,我们还能叫猴子随机地执行一些鼠标动作,例如左键单击、右键单击、拖拽,或者是在当前的插入点输入随机的文本。

(拥有这些技能的猴子能在画图程序或Corel Draw上画出不可思议的、未来派的作品)

我们有些时候把这些工具叫做“通用状态表”猴子,因为他们需要知道5个状态才能有效地工作:

1、 被测试应用程序没有在运行。

2、 被测试应用程序在运行中,并且可能在等待接受测试的输入。

3、 新的窗体出现了。

4、 新的窗体有一些猴子能识别出来的窗体控件。

5、 新的窗体离开了。

给出这样一个简单的只有5个基本状态的状态表,可以让我们的猴子记录更加有用的关于程序错误和失败的信息。猴子看到的大部分这些错误都是含糊的;必须检查错误日志来判断发生了什么事情。我们把这些称为“猴子噪音”bug,我们尽量避免它 通常忽略它。相反,猴子以debug方式运行程序,我们则用调试器监视猴子的测试。我们需要找到那些令人厌恶的和恐惧的“蓝屏”bug;调试器在“诱捕”这些bug方面很有用。它会自动中断猴子,并允许开发人员检查bug发生时的机器状态。

原文:Using Monkey Test Tools –How to find bugs cost-effectively through random testingNoel Nyman

分享到:
评论

相关推荐

    Android MonkeyTest猴子测试

    google为方便android开发人员测试软件的测试工具,猴子测试,里面详细讲解改软件的使用方法。祝大家开发出一个好的程序

    几款Android应用自动化测试工具

    简述:本文介绍几款流行的Android应用自动化测试工具。Monkey测试:随机测试,压力测试,运行在模拟器或实际设备中。MonkeyRunner测试:操作简单,可录制测试脚本,可视化操作,主要生成坐标的自动化操作,移植性不...

    Appanzee:使用 Cucumber 和 Ruby 的 Appium 测试套件以及一些用于猴子测试和控制 iOS 模拟器的便捷工具

    一些苹果脚本、ruby gems 和 python 脚本已经被投入使用,以将套件的功能扩展到远远超出 appium 的默认功能,启用: -猴子测试,具有简单的记录/报告格式以供复制- 视觉差异分析,生成带有差异标记的截图- 重置和无...

    对GUI实现自动化 测试的工具

    C# 笨猴子测试工具 源码来源Sybex.Effective.GUI.Test.Automation.Developing.an.Automated.GUI.Testing.Tool.pdf

    猴子测试「Monkey Testing」-crx插件

    一个简单的基于gremlins.js的猴子测试的谷歌Chrome扩展。 一堆猴子会尝试破坏您的Web应用程序。 这是gremlin.js的简单包装。 支持语言:English

    MonkeyTool:猴子工具

    版本更新 v2.0 2015-03-31说明:修复了v2.0版本更新公告中的打脸bug,功能可以正常使用;v2.0版本更新公告:近期将升级2.0,因为1.0无法执行“亮点功能”,简直打脸!不过,还好我脸皮厚,愈挫愈勇吧,需要加入线程来...

    monkey测试指南

    Monkey这个工具就是一个调皮的猴子,在App中乱按、乱摸、乱滚、乱跳。Monkey测试是Android平台下自动化测试的一种快速有效的手段,通过Monkey工具可以模拟用户触摸屏幕、滑动轨迹球、按键等操作来对模拟器或者手机...

    帮助您测试Web Workers的工具箱-JavaScript开发

    Worker Box Worker Box是一个工具箱,可帮助您测试Web Workers。 它提供了一种简单的方法来创建,存根和修改Worker,而无需复杂的测试服务器或猴子补丁。 有关更多信息,请确保签出docu Worker Box。Worker Box是可...

    Selnium 自动化测试中文API

    Selnium 自动化测试中文API。 Selenium也是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。...Selenium 是ThoughtWorks专门为Web应用程序编写的一个验收测试工具。

    SmartMonkey

    一个简单的猴子测试工具,随机点击界面,输入随机字符和键盘按键,对于某些类型的控件做出特定的动作,监视被测试程序的进程信息,能识别出程序是否出现异常,持续记录内存和CPU使用情况,方便发现是否存在内存泄漏...

    UFO简版工具.rar

    该工具针对修改用友的套打纸型修改,rep格式,适用版本用友U8、T系列。本人测试有效。

    学习笔记之Android自动化测试工具Monkey

    这个没有去怎么考究,Monkey这个工具就是一个调皮的猴子,在App中乱按、乱摸、乱滚、乱跳。1.安装你要测试的apk(秽话...)2.在电脑上运行cmd,找到AndroidSDK的playform-tools目录,并输入命令adbsh

    simiasque, 在覆盖掩码下隐藏Android状态栏的开发人员工具.zip

    simiasque, 在覆盖掩码下隐藏Android状态栏的开发人员工具 #SIMIASQUE##What 是 SimiasqueSimiasque是一个为... 它允许他们在覆盖蒙版下手动隐藏状态栏,防止压力测试( 猴子测试) 点击它。##Why 猴测试可以能

    PerformanceMonkey:Android性能测试工具,内存,CPU等

    性能猴子 Android性能测试工具,内存,CPU等。

    qt_monkey:用于测试基于Qt的应用程序的工具

    Qt猴子 介绍 Qt Monkey是一种用于自动测试基于Qt的应用程序的工具(仅限小部件)。 它可以自动创建/修改和运行测试。 测试用Javascript(支持Qt的方言)编写。 要编写测试,只需运行您的应用程序(由Qt Monkey仪表...

    安卓APP测试之MonkeyScript简单使用

    上一篇中我我们知道monkey可以像猴子一样乱点,用来测试APP稳定性。除了乱点以外,还可以通过编写脚本形式来完成一些指定的操作。 二、MonkeyScript使用 1、编写MonkeyScript测试脚本 MonkeyScript虽然有一些指定的...

    软件测试培训教程(精品PPT)

    包括软件测试的定义,分类,以及软件测试相关作用,软件测试常用的方法,常用的方法的基本介绍,软件测试的前景,测试报告的主要组成吗,以及相关的一些常用问题,用于学习和巩固,代理打开软件测试的入门学习。...

    ham:将一些训练有素的猴子发射到云端

    描述将(主要是受过训练的)猴子发射到云中详细描述有时,您真正想要的只是将一群训练有素的猴子发射到云中。 火腿是美国宇航局送入太空的第一只黑猩猩的名字: : “ham”是一个命令行工具,用于在 OpenStack 云上...

Global site tag (gtag.js) - Google Analytics