51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 3466|回复: 1
打印 上一主题 下一主题

[Robot] robot功能测试设计例子

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2005-9-3 14:42:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
robot功能测试设计例子

以学生管理系统的添加一个学生信息为例子

页面对象:editbox(姓名),button(添加)

数据要求:
1 姓名不能为空
2 姓名不能重复

程序结构
1 点button,弹出对话框“姓名不能为空”
2 输入姓名,点button,弹出对话框“添加成功”
3 姓名重复,点button,弹出对话框“姓名不能重复”

伪代码实现:
       
        buttonaddclick
        result=SqaGetProperty("弹出对话框","text",str)
           if str为“姓名不能为空”
                click ok
                else 失败
        end if

        editboxname input "a"
        buttonaddclick
        result=SqaGetProperty("弹出对话框","text",str)
        if str为“姓名不能重复”
                click ok
          goto label1
                else if str为“添加成功”
                click ok
                else 失败
        end if
label1: editboxname input "b"

代码回放说明:
1 第一次回放,首先进页面,点添加,弹出对话框“姓名不能为空”,点ok,在姓名里输入“a”,点添加,弹出对话框“添加成功”,脚本回放结束。
2 第二次回放,到了点ok,再输入“a”时,弹出对话框“姓名不能重复”,点ok,跳到label1,输入b,(此时姓名里面的内容为“ab”),点添加,弹出对话框“添加成功”,脚本回放结束。
3 第n次回放,同2

代码说明:
1 整个代码结构侧重系统弹出正确提示的验证,比如直接点添加,弹出对话框不是“姓名不能为空”,那么脚本就回放失败。
2 功能测试设计非常灵活,在这里我并没有判断SqaGetProperty的返回值。如果系统没有对话框弹出,脚本也会回放失败。当然这里也可以加上,当SqaGetProperty的值为 0 时,我们才继续判断str,否则就直接“失败”。
3 脚本里有两个失败,表示弹出对话框都不是我们预期的。在这里可以写日志,也可以什么都不做。写日志会方便我们分析回放结果。
4 开发设计,都是跟着需求走。需要你做到什么样,你就做到什么样。这里还可以对功能测试继续深入,比如,弹出对话框“添加成功”时,数据库里是不是多了一条我们刚添加的数据?弹出对话框“姓名不能重复”时,数据库里是否真的已经存在一条这样的记录?这些都是可以在脚本里控制的。
5 脚本设计,首先要把正确的情况都考虑周全。比如,上面去掉对对话框“姓名不能重复”的判断,那么第一次回放,脚本是可以成功的(前提是数据库以前也没有“a”这个名字),但是第二次,系统会弹出对话框“姓名不能重复”,其实这个时候程序是没有问题的,但是由于设计的疏忽,脚本里没有对这个对象的判断,脚本还是会回放失败。
6 对刚接触编程的人来说,这个脚本的重点,在于条件判断的设计!
7 SqaGetProperty的功能非常强大,是学习的重点。
8 待测程序和脚本我已经尽量简化。希望抛砖引玉。如有疑问,欢迎讨论!

[ Last edited by ilovejolly on 2005-9-3 at 14:45 ]
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2005-9-10 00:28:55 | 只看该作者
好例子!
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-11-25 07:58 , Processed in 0.083313 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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