|
知识路径: > 自动化测试 > 功能自动化测试 >
|
考试要求:掌握
相关知识点:2个
|
|
|
|
功能自动化测试工具基本上都是采取录制回放的方式来模拟用户的实际操作。当你在软件操作中点击图形用户界面上的对象时,测试工具会用一种类C或者其他的脚本语言(TSL)生成一个测试脚本,该脚本记录了你的操作过程,然后测试工具就可以回放刚才的操作过程。当然你也可以手工编程生成这个脚本。通常情况下,测试工具采取两种录制模式。
|
|
|
|
这种模式根据你选取的图形用户界面对象(如窗体、清单、按钮等),把你对软件的操作动作录制下来,并忽略这些对象在屏幕上的物理位置。每一次你对被测软件进行操作,测试脚本语言会记录并描述你选取的对象和你的操作动作。当你进行录制时,测试工具会对你选取的每个对象做惟一描述并写入相应的文件中。当软件用户界面发生变化时,你只需更新特定的对象记录文件。这样一来,环境判断模式的测试脚本将非常容易地被重复使用。执行测试只需要回放测试脚本。回放时,测试工具从指定文件中读取对象描述,并在被测软件中查找符合这些描述的对象并模拟用户使用鼠标选取该对象、用键盘输入数据的操作。
|
|
|
|
这种模式记录鼠标点击、键盘输入和鼠标在二维平面上(x轴和y轴)的精确运动轨迹。执行测试时,测试工具让鼠标根据轨迹运动。这种模式对于那些需要追踪鼠标运动的测试非常有用,例如画图软件等。
|
|
|
不论测试工具采用的是哪种录制模式,通常情况下,其实施测试必须经历的几个操作步骤如下。
|
|
|
. 创建脚本:你可以通过录制、编程或两者同用的方式创建测试脚本。测试工具可以自动记录你的操作并生成所需的脚本代码,你还可以直接修改测试脚本以满足各种复杂测试的需求。录制测试时,在需要检查软件反应的地方插入检查点(checkpoint)。你可以插入检查点来检查GUI对象、位图(bitmap)和数据库。在这个过程中,测试工具会自动捕捉数据,并将该数据作为期望结果储存下来。例如,在创建测试时,可以设定哪些数据库表和记录需要检测,在测试运行时,测试程序就会自动核对数据库内的实际数值和预期的数值是否一致。
|
|
|
. 调试脚本:脚本录制或编辑结束后,你可以先在调试模式下运行脚本。并可以设置中断点(breakpoint)来监测变量,控制对象识别和隔离错误。
|
|
|
. 执行测试:脚本调试结束后,便可以在检验模式下测试被测软件。运行测试时,测试工具会自动操作应用程序,就像一个真实的用户根据业务流程执行着每一步的操作。此时,测试工具在运行脚本过程中如果遇到了检查点,就把当前数据和事先捕捉并保存的期望值进行比较。如果发现有不符合,就记录下来作为测试结果。在具体的测试过程中,为了全面地测试一个应用程序,需要使用不同类型的数据来测试。一般情况下,测试工具都能提供动态数据处理及参数化技术,可以用参数去代替定值,从而真实地反映多个用户行为。以一个订单输入的流程为例,你可能希望把订单号或客户名称作为可变栏,用多套数据进行测试。使用数据驱动向导,你可以选择订单号或客户名称用数据表格文件中的哪个栏目的数据替换。你可以把订单号或客户名称输入数据表格文件,或从其他表格和数据库中导入。数据驱动测试不仅节省了时间和资源,又提高了应用的测试覆盖率。
|
|
|
. 结果分析:每次测试结束,测试工具都会把测试情况显示在测试结果报告中。测试结果报告会详细描述测试执行过程中发生的所有主要事件,如检查点、错误信息、系统信息或用户信息。如果在检查点有不符合的情况被发现,你可以在测试结果窗口查看预期结果和实际测试结果。如果是位图不符合,你也可以查看用于显示预期值和实测结果之间差异的位图。如果由于测试中发现错误而造成测试运行失败,你可以直接从测试结果中查看有关错误信息。
|
|
|