扩展性评测,大家知道测试软件中,数据至关重要。如登陆测试中,需要验证所有用户是否可以成功登录。用手工测试工作量太大,利用测试工具脚本的强大功能,就可以减少工作量.对任意用户进行登陆测试,脚本从用户文件中读取数据,每次测试人员需要测试新的用户,只要添加用户到用户列表中,就可以自动测试新用户登陆是否成功。
1. Winrunner
设计user.txt文本格式:用户<kTab>密码<kReturn>
如: admin<kTab>jetspeed<kReturn>
脚本如下:
web_browser_invoke(IE,"http://192.168.1.42");
win_max("Browser main Window");
//打开文件
file_open("F:\\user.txt",FO_MODE_READ);
//读取文件数据,填写用户名,密码
while(file_getline("F:\\user.txt",line)==0)
{
win_mouse_click ("html_frame_2", 402, 36);
win_type("html_frame_2",line);
win_mouse_click ("html_frame_2", 566, 33);
}
file_close("F:\\user.txt");
备注:由于winrunner脚本为语言为c,所以注意c语言特性,对于特殊字符需要利用转义字符“\”, file_open("F:\\user.txt",FO_MODE_READ),这里f:\user.txt,就需要加转义字符。
2. Robot
设计user.txt文本格式:用户 密码
如:admin jetspeed
脚本如下:
Sub Main
Dim Result As Integer
Dim Temp as String
dim FileNumber as integer
Dim iPos as integer
Dim UserName as string
Dim pw as string
'Initially Recorded: 2003-12-22 17:07:58
'Script Name: Demo
StartBrowser "http://192.168.1.42", "WindowTag=WEBBrowser"
Window SetContext, "WindowTag=WEBBrowser", ""
Browser NewPage,"HTMLTitle=Dynaweb EPS 2003企业门户服务器",""
'
FileNumber = FreeFile
//循环读取文件中数据,登陆
//自读形式 打开文件
Open "f:\user.txt" For Input As #FileNumber
Do While Not EOF(1)
// 读取数据,进行处理
Line Input #FileNumber, Temp
iPos = InStr(1,Temp," ")
//提取用户名
UserName = left(Temp,iPos-1)
//提取密码
pw = Right(Temp,len(Temp)-6)
//找到用户,密码文本框,填写用户名,密码
EditBox Click, "Name=username", "Coords=35,12"
Inputkeys UserName
EditBox Click, "Name=password", "Coords=15,8"
inputkeys pw
//提交数据,退出当前用户
PushButton Click, "Name=submit"
Browser NewPage,"HTMLTitle=Dynaweb EPS 2003企业门户服务器",""
HTMLImage Click, "Index=7", "Coords=11,7"
Loop
Close #FileNumber
//关闭Ie
Window CloseWin, "", ""
End Sub
3. quick test
设计user.txt文本格式:用户 密码
如:admin jetspeed
脚本如下:
Dim iPos
Dim UserName
Dim pw
Dim fso
Dim ts
Dim Temp
Set fso = CreateObject("Scripting.FileSystemObject")
Set ts = fso.OpenTextFile("F:\user.txt",1)
Do While not ts.AtEndOfStream
Temp = ts.ReadLine
iPos = InStr(1,Temp," ")
UserName = left(Temp,iPos-1)
pw = Right(Temp,len(Temp)-6)
Browser("Dynaweb EPS").Page("Dynaweb EPS").WebEdit("username").Set UserName
Browser("Dynaweb EPS").Page("Dynaweb EPS").WebEdit("password").Set pw
Browser("Dynaweb EPS").Page("Dynaweb EPS").WebButton("v{ _U ").Click
Browser("Dynaweb EPS").Page("Dynaweb EPS_2").Link("恄 Q | ~ ").Click
Browser("Dynaweb EPS").Page("Dynaweb EPS_3").Sync
loop
ts.close
备注:quick test脚本
一.中文注释要引号加空格
二.Vbscript脚本语言有限制,它只是vb语言的子集
三.声明不需要添加类型,否则脚本编译不通过,差错很困难