测试合成环境解析 软件测试
一、测试合成环境MicrOSoft Test for Windows
另一个典型的集成化测试系统是Microsoft Test for windows。它可对windows中的应用程序自动进行测试。它不依赖于机器类型,不要求特定编译器或开发系统。它把自动测试的优点引入到windows环境中,使用户可以更为高效、更加全面地测试程序,并把精力集中到编写windoWS应用程序这种具有创造性的工作上来。
Microsoft Test for windows包括创建和运行模拟键盘和鼠标输入,并检查结果正确与否的自动测试程序所需的一切机制。可以测试异常情况,自动记录结果,截获未知的应用程序错误,还可以测试应用程序设计接口和动态链接库。Microsoft Test。for windows的技术特点如下:
1)提高应用程序的质量
·Microsoft Test for windoWS对实际结果和期望结泉进行快速、细致的比较,包括对话框的位置、内容和各控制的状态。
·在将软件交付测试人员之前先核实其基本功能,在将应用程序交付用户之前先验证它的质量。
2)测试windows应用程序
·测试windows环境中的特定事件,如动态数据交换(DDE)、对象链接和嵌入(OLE)。捕获意外事件(如UAE),中国自学编程网整理发布采取预先指定的动作,如记录事件的条件或启动另外一个测试等。
·测试包括使用了DLL的应用程序在内的大型应用程序。
·适用于任何版本的windows应用程序,而不管这些应用程序是用何种工具创建的;不需任何特殊的调试代码。
3)对开发者和测试者既方便又有效
·通过记录用户动作,开发简单的测试程序或使用BASI(:开发更为全面的程序。
·使每种输入事件(如键盘与鼠标移动)的实际结果与期望结果自动比较。
·通过进行独立于设备的测试来减少测试次数。
·仅在测试环境中经过二或三次重复之后,Microsoft Test for windows就开始简化自己的工作。
Microsoft Test for windows集成了许多工具,为测试提供了最大的灵活性:
1)Test Driver:是开发和运行测试程序的环境。其中包括一个增强型版本BASIC语言,一个记录器和一个用户单步调试及断点调试器。Test Driver支持传统的BASIC:语句,如IF THEN、wHILE wEND和SELECT CASE以及条件编译、文件列表处理、捕获事件和运行错误、suB和FUNCTION、用指针调用DDL(动态数据链接)等。
2)Fast Test:是Test Driver的子集,它提供了类似于英语的函数,能够帮助毫无BASIC经验的用户编写测试程序。
3)Test Dialogs:它可以捕获、中国自学编程网整理发布,比较窗口控制,如菜单、按钮和对话框等;有两种可能的选择:一是与期望结果进行比较,以求精确匹配;而是检查完整性和状态,即使位置与大小不同。
4)Test Screen:它可以捕获和比较屏幕位置。
5)Test Event和Test ctrl DLL:可以模拟键盘和鼠标输入,让开发者控制事件时序、根据名称标识和修改各控制的可用性和状态。
二、测试合成环境SADAT
用于测试的自动工具还有很多,例如环境模拟程序、代码检查程序、测试文档生成程序、测试执行验证程序、输出比较程序、程序正确性证明程序等,以及各种调试工具。而且出现了将多种测试工具融为一体的集成化测试系统。
(1)SADAT
德国IDT开发的sADAT,是对FORTRAN程序进行测试的集成化工具,它把静态分析、动态分析、测试用例生成、路径谓词演算等许多功能集成在一起,用统一的命令语言调用,各工具都使用公共数据库中的信息,成为一种功能很强的测试工具。
sADAT在源程序代码编译无错的基础上,首先进行静态分析,通过词法分析,中国自学编程网整理发布生成源正文表、标号表、语句表、符号表、符号使用表以及公用块表。结构分析的结果,生成程序流程图、简化的流程图和相应信息,这些将成为后面各阶段分析的基础。同时也要检查发现如死代码,未定义或未使用的变量和标号,跳入、跳出循环错等。测试用例生成可以在确定的路径子集上,自动选择符号,给出覆盖标准的近似最优程序路径集合。路径谓词演算通过程序的符号执行,对程序进行相应的测试。动态分析对所测试程序的每个判断分支,自动插入控制语句,对每条支路执行次数进行计数,检出动态死代码,确定正确的循环次数,并对最频繁使用的部分进行优化。