51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2847|回复: 5
打印 上一主题 下一主题

[求助] 关于MFC的测试问题

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2015-7-13 15:35:17 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
小弟是测试方面的菜鸟,最近公司想搞系统的自动化测试,系统是用VC6.0 MFC写的,有exe和若干DLL,现在用VS2010重新编译了一次, 请问使用怎样的测试软件比较好?

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

  • TA的每日心情
    开心
    2020-11-16 16:29
  • 签到天数: 68 天

    连续签到: 1 天

    [LV.6]测试旅长

    2#
    发表于 2015-7-14 10:25:05 | 只看该作者
    QTP全称Mercury QuickTest Professional,是一款自动化测试工具,用于软件的功能测试和回归测试。它能够录制用户行为,并自动进行重放、捕获及验证,可以代替测试人员去完成那些重复性高并且枯燥的工作。
    录制用户行为,也就是录制测试脚本,所有录制的用户行为都能够追踪到脚本代码。脚本的重用作为测试自动化的一个方面,是指将一些通用的、固定的用户行为从测试脚本中提取出来,作为独立部分,在其它脚本中加以引用。这样,就避免了一些通用行为的重复录制,有利于测试框架的搭建。
    本文将简单介绍Mercury QuickTest Professional 8.2中脚本的重用方法。
    QTP中的Action
    QTP中脚本可重用的最小单元是Action,录制的用户行为集合将以脚本代码的形式存放在Action中。当你录制脚本的时候,只有一个Action,录制的脚本也全部在这个Action中,可以将这个Action进行切割,提取通用脚本并模块化。
    QTP提供四种操作Action的方式:
    1、New Action:新建一个Action,可以在其中录制、编辑脚本;
    2、 Split Action:将一个Aciton分割成两个Action;
    3、 Copy of Action:复制一个Action,即创建一个副本。两个Action相互独立,修改其中任何一个,不会影响另一个;
    4、 Call to Action:如同编程语言中的函数调用,测试脚本中也可以引用或调用一个可重用的Aciton,这个Action可以是任一测试脚本文件中声明为Reusable(可重用)的Action。注意:不允许在引用端修改被调用的Action,只能在原脚本文件中修改。
    脚本重用示例
    Call to Action是QTP重用脚本的核心,下面简单介绍一个使用这种方式来重用脚本的例子。
    测试一个简单的B/S结构的办公自动化系统的常用功能。
    大体流程为:登录系统―业务处理―退出系统。
    其中登录系统和退出系统属于可重用性比较强的功能模块,如果系统允许同一用户同时在多台计算机上登录的话,可以单独建立一个脚本文件,将登录和退出录制成两个可重用的Action,以便重用。业务处理流程就比较多样了,它包括文稿审批、个人日志管理、请假申请等功能模块。
    测试一个功能模块的完整用户行为包括登录系统,执行特定的业务流程,执行完毕后退出系统。可使用一个测试脚本文件测试一个特定的功能模块,系统登录和退出模块可以使用Call to Action方式进行重用,不需要在每个模块的测试中都进行录制。
    具体步骤如下:
    步骤1:录制系统登录和退出脚本。
    新建login_out脚本文件,在Record and Run Setting选项卡中,选择IE方式并输入办公自动化系统的网址,点击OK进行录制。QTP将自动打开办公自动化系统的网页,输入用户名和密码登录系统,再退出系统。然后结束录制,QTP将自动生成脚本。
    步骤2:使用Split Action方式将login_out脚本中的Action分割成login和logout两个Action。
    login是系统登录部分的脚本,logout是退出部分的脚本。具体的分割步骤本文不作说明,读者可参阅QTP的使用手册。
    步骤3:将login和logout设定为可重用。
    打开两个Action的Action Properties对话框,点选Reusable action选项,点击OK后,两个Action便可以被其它脚本文件引用了。
    步骤4:录制业务处理脚本。
    按照步骤1新建process脚本文件进行任一功能模块的测试脚本录制。在登录系统进入主界面后,按下工具列中的Record按钮,开始录制相关的业务操作,完成后再按下Stop按钮结束录制,并将Action命名为processing。
    这样,process文件包含一个Action名为processing,其中录制了一段系统业务处理流程的测试脚本,但并未包含用户的登录和退出行为,不能直接自动执行,需要手工登录系统进入主界面后,才能执行。
    步骤5:调用login和logout,完善process脚本。
    打开process脚本,在菜单中选择Insert―Call to Existing Action选项,打开Select Action对话框,选择login_out脚本,选择login,点击OK进行Action的引用。用同样的方法应用logout。注意,调整三个Action的顺序为login―processing―logout。
    完成以上五个步骤后,可以执行process脚本进行调试。
    小结
    脚本重用作为测试自动化的一个方面,缩短了脚本的编制时间、利于脚本的架构与维护。在脚本文件中直接调用可重用的脚本,避免了重复录制,节省时间。
    自动化测试人员可以把一个Action中的用户行为分割成很多Action,从中提取出重用性高的设置为Reusable action保存在单独的文件中,并利用这些Reusable action来灵活地架构自己的测试脚本。当一个可重用的脚本需要修改时,仅需在它的源文件中进行改动,调用它的脚本都会随之改动,方便了脚本的维护。


    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    昨天 07:50
  • 签到天数: 2818 天

    连续签到: 6 天

    [LV.Master]测试大本营

    3#
    发表于 2015-7-14 12:33:07 | 只看该作者
    分析:自动化测试分为两类:基于GUI的自动化测试和基于WEB的自动化测试;很明显你要做的是基于GUI的自动化测试,所以选择支持GUI的自动化测试工具即可;
    建议:可选择QTP/SilkTest等工具,当然还是根据楼主的能力,选择一个入手简单一些的,网上资料多的工具学习,方便问题解决及测试进度。

    评分

    参与人数 1测试积点 +10 收起 理由
    lsekfe + 10 恭喜你获得测试积点10

    查看全部评分

    回复 支持 反对

    使用道具 举报

    该用户从未签到

    4#
    发表于 2015-7-15 03:41:33 | 只看该作者
    写错不错支持下
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    擦汗
    2017-2-4 09:49
  • 签到天数: 145 天

    连续签到: 1 天

    [LV.7]测试师长

    5#
    发表于 2015-7-15 13:36:58 | 只看该作者
    jingzizx 发表于 2015-7-14 12:33
    分析:自动化测试分为两类:基于GUI的自动化测试和基于WEB的自动化测试;很明显你要做的是基于GUI的自动化测 ...

    请问基于web的测试和基于GUI的测试侧重有什么不同,有什么区别
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    昨天 07:50
  • 签到天数: 2818 天

    连续签到: 6 天

    [LV.Master]测试大本营

    6#
    发表于 2015-7-16 08:44:23 | 只看该作者
    shanfeng1419 发表于 2015-7-15 13:36
    请问基于web的测试和基于GUI的测试侧重有什么不同,有什么区别

    GUI自动化测试是在自动化测试框架或测试工具的基础上,通过录制/回放测试脚本完成GUI产品的测试.她主要是通过识别对象,模拟用户行为,测试目标检测而实现.
    Web自动化测试因为web应用的特点,如体系架构/开发技术/应用环境不同,通过录制,编译,运行,生成测试报告的测试流程完成测试.但是要较全面的支持浏览器录制功能,支持混合自动化测试框架等.
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-24 20:28 , Processed in 0.074901 second(s), 24 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表