51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 3635|回复: 7
打印 上一主题 下一主题

请问用Winrunner可以做没有界面的测试吗?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-9-6 10:06:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
现在录入界面在客户那端,而我们公司内部又要进行测试,没有界面,开发就自己写了报文,我们测试就直接发送报文,然后再看返回的报文是否正确。

请问:像这种测试,可以用WinRunner做吗?
如果可以,那该如何进行呢?
不知有没有朋友遇到过?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2007-9-6 18:37:04 | 只看该作者
我觉得没有界面的软件最好不要用WR,QTP测,因为即使可以测效果也不会很好,所以建议用白盒测试工具,特别是专门对无界面软件的测试工具。
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2007-9-27 10:09:30 | 只看该作者
winrunner可以用于无界面测试。解决思路主要有两条:
1.对于简单应用,可以考虑自行开发测试程序,用编程工具提供的框架,加上调用被测功能的接口,然后与界面按钮做关联,即可通过录制测试程序的界面操作来实现你的目的。
2.对于客户端程序,某些操作需要判断返回值,此时可以直接调用程序的动态库接口实现。
例如,某即时通讯系统需要测试客户端登录的成功率以及各种失败的原因,通过录制操作界面只能获得登录成功率,无法获知各种失败原因在总失败率中的比例,而通过调用动态库接口的形式则可以很容易的获取到详细信息。
这里给出实例脚本,供大家参考:
#加载动态库
load_dll("c:\\"&"xxx.dll");

#声明函数
extern int commInitInstance();
extern int commExitInstance();
extern int commLogin(string,string,string,unsigned int,unsigned int);
extern int commLogout();

#调用函数
table = "groups.xls";
rc = ddt_open(table, DDT_MODE_READ);
if (rc!= E_OK && rc != E_FILE_OPEN)
        pause("Cannot open table.");
ddt_get_row_count(table,table_RowCount);
for(table_Row = 1; table_Row <= table_RowCount; table_Row ++)

{
        ddt_set_row(table,table_Row);
                for (iCount = 1;iCount<=ddt_val(table,"groupsize") ;iCount++)
                {
                        commInitInstance();
                        UserName = ddt_val(table, "groupbegin")+iCount-1;
                        nLogin = commLogin(UserName,pwd,server,port,nHideMe);
                        if (nLogin==1)
                        {
                                report_msg(UserName&"登录成功");                               
                        }
                        else
                        {
                                report_msg(UserName&"登录失败,错误码"&nLogin);
                        }

                        commLogout();
                        commExitInstance();
                }
}

ddt_close(table);

unload_dll("c:\\"&"xxx.dll");

循环部分是从一个excel表中取数据,以实现用户分组,这个表我就不提供了,大家见谅哈
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2007-9-27 10:11:25 | 只看该作者
补充说明:
UserName,pwd,server,port,nHideMe等参数在脚本中另有定义,这里仅做格式说明用。
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2007-9-27 14:09:21 | 只看该作者

回复 3# 的帖子

学习中.....
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2007-9-28 10:35:29 | 只看该作者

软件 测试

估计不可以
回复 支持 反对

使用道具 举报

该用户从未签到

7#
发表于 2007-9-28 10:37:38 | 只看该作者

winrunner

学习中
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2007-9-28 21:17:13 | 只看该作者
学习~
哎,迷茫中····
工作中很难使用工具,只学习但用不到实际的工作中,,,,
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-9-20 14:45 , Processed in 0.073152 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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