51Testing软件测试论坛

标题: 怎么测试登录页面啊 [打印本页]

作者: zhufeirinui    时间: 2006-12-20 15:20
标题: 怎么测试登录页面啊
公司要做一个测试所有用户能否登录的QTP测试,用户输入正确进入另一个页,输入不正确就在登录页面显示“UserCode为(’输入的用户名‘)的用户不存在”,现在我加了一个表格检查点在点击登录后,但输入正确数据后测试结果就在建立了表格检查点处Failed,
请问下各位大哥,大姐,呵,应该怎么做才能在页面显示“UserCode为(’输入的用户名‘)的用户不存在”时就把测的用户保存到文件中。
作者: xiaonan    时间: 2006-12-20 16:58
首先不知道你的检查点是怎么做的,我觉得直接可以用if语句来判断这个"UserCode为(’输入的用户名‘)的用户不存在".

if 取到的值=(’输入的用户名‘)的用户不存在 then
  把用户名写到一个文件中去
esleif  还要判断打开的新页面是不是正确 then
.....
end if
作者: zhufeirinui    时间: 2006-12-20 17:10
呵,先谢谢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
作者: wslo888    时间: 2006-12-20 20:11
标题: 回复 #3 zhufeirinui 的帖子
首先我先说点不是很健全的想法:
你其实想做一个调用的.
也就是你开始要录制一个错的例子.在这个里你要加参数PASSNAME.做你的IF...ELSE
然后你要去录制一个正确的例子.(去掉其中一个语句就是输入正确NAME的时候的语句)
现在你要分割(分3个应该就可以了).然后要做的就是调用
调用就可以解决你这个问题了.      
(仅供参考)
作者: cat_zhang    时间: 2006-12-20 20:42
你是想用不同的用户名登录么?可以参数化一下阿
你可以在qtp内部使用它的database也可以调用excel表格,将你想要使用的数据录入其中,再用判断语句做个判断
if entry_name不存在则将姓名录入文档,else 存在则调用database的数据

[ 本帖最后由 cat_zhang 于 2006-12-20 20:45 编辑 ]
作者: denisye    时间: 2006-12-20 22:19
“但判断后我还想继续用下一个用户登录”
在Browser("Login").Dialog("Microsoft Internet Explorer").WinButton("确定").Click
后面加上“启动程序,转到登录页面”的语句

另外,你的Goto语句能在QTP中执行?
作者: rain_wind    时间: 2006-12-21 08:56
这是我以前学习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
作者: 铁甲飞龙2006    时间: 2007-1-25 19:47
标题: 如果登陆界面有验证吗?怎么处理
如果登陆界面有验证吗?怎么处理
作者: testxiaoxiao    时间: 2008-9-25 19:43
学习了。




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2