- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
15软件测试自动化概要
自动化测试概念 用工具代替/辅助人工完成软件测试活动的过程,泛指所有能用工具辅助进行的有关测试活动。 测试自动化的目标是对被测试系统进行自动测试。总的来说,测试自动化的目标是通过较少的开销,得到更彻底的测试,并提高产品的质量。 自动化测试局限性 自动化测试不能取代手工测试。下列情况不适合于自动化测试: 测试很少进行 软件不稳定 :如软件升级版本时,用户界面和功能频繁变化,此时自动化测试相应部分修改的开销较大。而软件不稳定时,手工测试可以很快发现故障。 结果很容易通过人验证的测试 :该种情况下的自动化测试非常困难甚至不可能,如彩色模式的合适程度、屏幕轮廓的直观效果,或选择制定的屏幕对象是否能够播放正确的声音等。 涉及物理交互的测试 :如在读卡机上划卡,断开设备的物理连接,开关电源等。 自动化测试局限性 手工测试比自动测试发现的故障要多 自动化测试主要是进行重复测试,一般情况下,自动化测试进行的工作是以前进行过的,因此被测试软件在自动化测试中暴露的故障要少得多。 测试自动化主要用于回归测试,进行正确性验证测试,而不是故障发现测试。据经验数据统计,自动测试只能发现约15%的故障,而手工测试可以发现85%的故障。 自动化测试局限性 自动化测试不能提高测试的有效性。自动化测试只是用于提高测试的效率,即减少测试的开销和时间。 自动化测试不具有想象力 自动化测试是通过测试软件进行,测试过程只是按照运行机制执行。手工测试时可以直接判断测试结果的正确性,而自动测试许多情况下测试结果还需要人工干预判断。 手工测试可以处理意外事件,如网络连接中断,此时必须重新建立连接。手工测试时可以及时处理该意外,而自动化测试时该意外事件一般都会导致测试的中止。 概念 线性脚本是录制手工执行的测试事例得到的脚本 线性脚本的优点: 简单;快速;用户不必是编程人员;对实际的执行操作可以审计跟踪;提供良好的(软件或工具)演示; 何时使用线性脚本 几乎任何可重复的操作都可以使用线性脚本技术自动化。 测试事例只用一次。 线性脚本的缺点 过程繁琐;无共享或重用脚本;容易受软件变化的影响; 维护成本高。 结构化脚本 概念 结构化脚本类似于结构化程序设计,结构化脚本中含有控制脚本执行的指令。这些指令或为控制结构或为调用结构。 所有测试工具脚本语言支持3种基本控制结构。 第一种:“顺序” 脚本; 第二种:“选择” 脚本; 第三种:“叠代” 脚本。 优点 健壮性好,可以对一些容易导致测试失败的特殊情况进行处理。 结构化脚本还可以执行许多其他类似的功能,如需要重复的指令可以使用循环结构。 结构化脚本还可以作为模块被其他脚本调用。 缺点 脚本变得更加复杂,而且测试数据仍然 “捆绑 ”在脚本中。 数据驱动脚本技术将测试输入存储在独立的(数据)文件中,而不是存储在脚本中。脚本中存放控制信息,如菜单导航。执行测试时,从文件中而不是直接从脚本中读取测试输入。 脚本相同而数据不同。 优点: 可以很快增加类似的测试; 测试者增加新测试不必具有工具脚本语言的技术或编程知识; 对于第二个测试及后续测试无额外的脚本维护开销。 缺点: 初始建立的开销较大; 需要专业(编程)支持; 必须易于管理。 “关键字驱动脚本”实际上是较复杂的数据驱动技术的逻辑扩展。 优点: 脚本维护开销少。 测试方法与工具(及平台)无关的方法实现。 实现测试的方法可以剪裁适合测试者而不是测试工具,使用测试的最习惯的形式和工具(如文本编辑器、电子表格、可字处理) 技术要求比较高。 测试验证是检验软件是否产生了正确输出的过程,是通过在测试的实际输出与预期输出(例如,当软件正确执行时的输出)之间完成一次或多次比较来实现的。 自动比较只能做到将实际输出与预期输出进行比较。如果预期输出中有错误,自动比较则会隐藏这个错误,而不是在实际输出中突出这一错误。 比较是验证的方式,并且可以自动化大部分的比较工作。虽然只能自动比较实际输出与预期输出,预期输出并非一定是正确的,但是自动比较比人工完成相同的比较要迅速可靠得多。 测试自动化的基本结构 We learned steps 1, 2 and 3 in the Fundamentals course. We will add unto this process a fourth step which is to correlate data and integrate the SAP tests. Why do we perform functional testing? When is functional tes
文档评论(0)