51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 3365|回复: 8
打印 上一主题 下一主题

[原创] 怎么测试登录页面啊

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2006-12-20 15:20:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
公司要做一个测试所有用户能否登录的QTP测试,用户输入正确进入另一个页,输入不正确就在登录页面显示“UserCode为(’输入的用户名‘)的用户不存在”,现在我加了一个表格检查点在点击登录后,但输入正确数据后测试结果就在建立了表格检查点处Failed,
请问下各位大哥,大姐,呵,应该怎么做才能在页面显示“UserCode为(’输入的用户名‘)的用户不存在”时就把测的用户保存到文件中。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

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

使用道具 举报

该用户从未签到

2#
发表于 2006-12-20 16:58:52 | 只看该作者
首先不知道你的检查点是怎么做的,我觉得直接可以用if语句来判断这个"UserCode为(’输入的用户名‘)的用户不存在".

if 取到的值=(’输入的用户名‘)的用户不存在 then
  把用户名写到一个文件中去
esleif  还要判断打开的新页面是不是正确 then
.....
end if
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2006-12-20 17:10:57 | 只看该作者
呵,先谢谢xiaonan ,我只是想,因为要验证输入了不在数据库中的用户名的话,就要出提示,
那就只有点击登录,但点击了登录后,就会转到另一页,就检查不了了,后来看到有个贴,我就想用
Window("Text:=Login - Microsoft Internet Explorer").exist)
因为点击了登录后,这个页面会没,就说明登录成功了,如果不成功就可以在这里判断,
if (Window("Text:=Login - Microsoft Internet Explorer").exist) then

end if
但判断后我还想继续用下一个用户登录,就不知道怎么转了。
这是写的测试代码,呵,因为第一次写,大家多指点下
set con=createobject("adodb.connection")

con.open("driver=sql server;server=zf;uid=sa;pwd=;APP=Quick Test Pro;database=a")

set record=createobject("adodb.recordset")

sql="select  name  from aa "
record.Open sql, con
While(record.eof=false)
Dim passName
passName=record("name")
Browser("Login").Page("Login").WebEdit("TextBox1").Set  (passName)
Browser("Login").Page("Login").WebEdit("TextBox2").Set "123456"
Browser("Login").Page("Login").WebButton("登  录").Click
if (Window("Text:=Login - Microsoft Internet Explorer").exist) then
goto o
end if
Browser("Login").Page("Main").Link("注销").Click
Browser("Login").Dialog("Microsoft Internet Explorer").WinButton("确定").Click

o:record.movenext
Wend
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2006-12-20 20:11:29 | 只看该作者

回复 #3 zhufeirinui 的帖子

首先我先说点不是很健全的想法:
你其实想做一个调用的.
也就是你开始要录制一个错的例子.在这个里你要加参数PASSNAME.做你的IF...ELSE
然后你要去录制一个正确的例子.(去掉其中一个语句就是输入正确NAME的时候的语句)
现在你要分割(分3个应该就可以了).然后要做的就是调用
调用就可以解决你这个问题了.      
(仅供参考)
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2006-12-20 20:42:51 | 只看该作者
你是想用不同的用户名登录么?可以参数化一下阿
你可以在qtp内部使用它的database也可以调用excel表格,将你想要使用的数据录入其中,再用判断语句做个判断
if entry_name不存在则将姓名录入文档,else 存在则调用database的数据

[ 本帖最后由 cat_zhang 于 2006-12-20 20:45 编辑 ]
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2006-12-20 22:19:59 | 只看该作者
“但判断后我还想继续用下一个用户登录”
在Browser("Login").Dialog("Microsoft Internet Explorer").WinButton("确定").Click
后面加上“启动程序,转到登录页面”的语句

另外,你的Goto语句能在QTP中执行?
回复 支持 反对

使用道具 举报

该用户从未签到

7#
发表于 2006-12-21 08:56:11 | 只看该作者
这是我以前学习qtp时写的登陆脚本的设计,提供给你参考
Dim str,MyArray ,Msg

Browser("test").Page("test").Frame("topFrame").WebEdit("name").Set DataTable("Name", dtGlobalSheet)
Browser("test").Page("test").Frame("topFrame").WebEdit("name").Set DataTable("pwd", dtGlobalSheet)
Browser("test").Page("test").Frame("topFrame").Link("登录").Click

if(Browser("test").Dialog("Microsoft Internet Explorer").Exist) then
   str = Browser("test").Dialog("Microsoft Internet Explorer").GetVisibleText
  '假设系统提示信息为“请输入帐号!”,则“GetVisibleText ”这个函数返回的值是:
  'Microsoft  Internet  Explorer
  '请输入帐号!
  '确定
   MyArray = Split(str,  vbcrlf , -1, 1)
   'MyArray(0) =Microsoft  Internet  Explorer
   'MyArray(1) =请输入帐号!
   'MyArray(2) =确定
  str = MyArray(1)
  datatable.Value("result",dtGlobalSheet)=str
   Browser("test").Dialog("Microsoft Internet Explorer").WinButton("确定").Click
Else
   Browser("test").Page("test").Frame("topFrame_2").Link("退出").Click
end if
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2007-1-25 19:47:12 | 只看该作者

如果登陆界面有验证吗?怎么处理

如果登陆界面有验证吗?怎么处理
回复 支持 反对

使用道具 举报

该用户从未签到

9#
发表于 2008-9-25 19:43:53 | 只看该作者
学习了。
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-10-6 14:34 , Processed in 0.091001 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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