TCLEXPECT自动化测试脚本实例
2013-03-21 14:24
357 查看
TCL/EXPECT自动化测试脚本实例一 --- telnet到目标机器
自动化TCLtelnetEXPECTTelnet自动测试框架STAFRobotFramework持续集成
这是一个简单的TCL/E XP ECT脚本,完成telnet到远程设备的功能。通过这个例子,大家可以看到使用TCL/EXPECT脚本构造测试程序,是非常简洁的。 从今天开始,陆续把我所写的一些 自动测试 脚本贴上来,希望对初学者有所帮助。由于目前没有找好合适的 服务器 存
这是一个简单的TCL/EXPECT脚本,完成telnet到远程设备的功能。通过这个例子,大家可以看到使用TCL/EXPECT脚本构造测试程序,是非常简洁的。
从今天开始,陆续把我所写的一些自动测试脚本贴上来,希望对初学者有所帮助。由于目前没有找好合适的服务器存放代码,所以代码先贴在blog的正文中,以后再提供完整的代码下载。
我的自动化测试脚本运行在debian linux下,使用/usr/bin/expect进行解释执行。为了简化处理,把一些常用的功能编写成函数,放在commonLib.exp文件中,其它脚本文件可以使用source commonLib.exp命令引用这些函数。
下面的函数完成telenet到目标机器并login。从其实现上大家可以看到tcl/expect编写测试脚本的简洁。
这个函数带有三个参数,分别是目标机器的IP地址ipaddr,登录用户名user和登录密码,telenet的端口号采用默认的23端口。
函数中使用了三个全局变量,g_prompt,g_usrPrompt和g_pwdPrompt,分别表示登录后的命令提示符,提示用户名输入的提示符,以及提示密码输入的提示符,这三个全局变量定义在global.exp中。之所以采用全局变量,是因为这些值使用比较广泛,但在不同设备中都不相同。使用全局变量可以方便修改。
代码如下:
#************************************************
# telnet login routine
#
# @PARAMS
# ipaddr - remote device ip address
# user - user name to login in
# passwd - login password
#
# @RETURN
# spawn_id if login suclearcase/" target="_blank" >ccess, otherwise 0
#************************************************
proc login {ipaddr user passwd} {
global g_prompt g_usrPrompt g_pwdPrompt
spawn telnet $ipaddr
expect {
"$g_usrPrompt" {
exp_send "$user\r\n"
exp_continue
}
"$g_pwdPrompt" {
exp_send "$passwd\r\n"
exp_continue
}
-ex "$g_prompt" {
dbgLog "Login Successful\n"
return $spawn_id
}
timeout {
send_user "timeout"
return 0
}
}
自动化TCLtelnetEXPECTTelnet自动测试框架STAFRobotFramework持续集成
这是一个简单的TCL/E XP ECT脚本,完成telnet到远程设备的功能。通过这个例子,大家可以看到使用TCL/EXPECT脚本构造测试程序,是非常简洁的。 从今天开始,陆续把我所写的一些 自动测试 脚本贴上来,希望对初学者有所帮助。由于目前没有找好合适的 服务器 存
这是一个简单的TCL/EXPECT脚本,完成telnet到远程设备的功能。通过这个例子,大家可以看到使用TCL/EXPECT脚本构造测试程序,是非常简洁的。
从今天开始,陆续把我所写的一些自动测试脚本贴上来,希望对初学者有所帮助。由于目前没有找好合适的服务器存放代码,所以代码先贴在blog的正文中,以后再提供完整的代码下载。
我的自动化测试脚本运行在debian linux下,使用/usr/bin/expect进行解释执行。为了简化处理,把一些常用的功能编写成函数,放在commonLib.exp文件中,其它脚本文件可以使用source commonLib.exp命令引用这些函数。
下面的函数完成telenet到目标机器并login。从其实现上大家可以看到tcl/expect编写测试脚本的简洁。
这个函数带有三个参数,分别是目标机器的IP地址ipaddr,登录用户名user和登录密码,telenet的端口号采用默认的23端口。
函数中使用了三个全局变量,g_prompt,g_usrPrompt和g_pwdPrompt,分别表示登录后的命令提示符,提示用户名输入的提示符,以及提示密码输入的提示符,这三个全局变量定义在global.exp中。之所以采用全局变量,是因为这些值使用比较广泛,但在不同设备中都不相同。使用全局变量可以方便修改。
代码如下:
#************************************************
# telnet login routine
#
# @PARAMS
# ipaddr - remote device ip address
# user - user name to login in
# passwd - login password
#
# @RETURN
# spawn_id if login suclearcase/" target="_blank" >ccess, otherwise 0
#************************************************
proc login {ipaddr user passwd} {
global g_prompt g_usrPrompt g_pwdPrompt
spawn telnet $ipaddr
expect {
"$g_usrPrompt" {
exp_send "$user\r\n"
exp_continue
}
"$g_pwdPrompt" {
exp_send "$passwd\r\n"
exp_continue
}
-ex "$g_prompt" {
dbgLog "Login Successful\n"
return $spawn_id
}
timeout {
send_user "timeout"
return 0
}
}
相关文章推荐
- TCL/EXPECT自动化测试脚本实例二 --- 主程序
- TCL/EXPECT自动化测试脚本实例三 --- 全局变量
- TCL/EXPECT自动化测试脚本实例四 --- 批命令执行
- TCL/EXPECT自动化测试脚本实例五 --- 由文件中读取一行
- TCL/EXPECT自动化测试脚本实例六 --- SNMP community长度测试
- TCL/EXPECT自动化测试脚本实例七 --- 构造报文测试
- TCL/EXPECT自动化测试脚本实例
- TCL/EXPECT自动化测试脚本实例七 --- 构造报文测试
- TCL/EXPECT自动化测试脚本
- expect脚本实例-监控日至和磁盘空间
- 自动化交互脚本Expect简单介绍及应用实例
- linux自动交互工具expect,tcl安装和安装包,以及自动互信脚本
- 图文教程自动登录expect脚本实例
- shell脚本交互:expect学习笔记及实例详解
- TCL 脚本实例: 从文件中删除字符串
- 自动化测试-TCL脚本语言
- Tcl/tk实例—使用tclkit工具将脚本打包成可执行文件(.exe)
- 给TCL/expect脚本加公共函数处理结果(一)
- Tcl脚本调用高层API实现仪表使用和主机创建配置的自动化测试用例
- appium 下 python 脚本自动化测试iOS APP 实例