`
insertyou
  • 浏览: 874354 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

TCL/EXPECT自动化测试脚本实例四 --- 批命令执行

阅读更多
在测试过程中,在具体测试某一个功能点时,往往需要为此进行大量的配置。为了简化测试过程,我们可以把所有的配置命令放在一个文本文件中,然后使用测试脚本来执行这些命令。这样就不需要再手工进行配置了,费时费力。
基于如上考虑,编写了下面的脚本tCmd.exp。这个脚本被我们前面介绍过的test.exp脚本调用。

# $Id$

# This file is used to execute specific commands list in a file

proc execCmdFile {cmdFile} {
global g_dbgFlag g_prompt

# enable debug
set g_dbgFlag 1

# login
set spawn_id [login $g_devip $g_user $g_passwd]
if {$spawn_id == 0} {
errLog "login $g_devip failed"
return 0
}

# open cmdFile
set cmdFd [open $cmdFile r]

while true {
# get a line
if {![getLine $cmdFd line]} {
dbgLog "reached eof"
break
}

# split the line
set ln [split $line ","]
set cmd [string trim [lindex $ln 0]]
set out [string trim [lindex $ln 1]]

if {$cmd == ""} continue
if {$out == ""} set out $g_prompt

# send cmd line
exp_send "$cmd\n"
dbgLog "send $cmd"

# expect output
dbgLog "expect $out"
expect {
timeout {
errLog "TIMEOUT: while exec \"$cmd\""
continue
}
-ex "$out" {
continue
}
} ;# end expect
}

# close cmdFile
close $cmdFd
}

# if no cmdFile, use default
if {$cmdFile == ""} {
set cmdFile "cmdFile.txt"
}

execCmdFile $cmdFile

有了这个脚本,我们可以使用"./test.exp -cinterface.txt cmd"来执行interface.txt中的命令。
分享到:
评论

相关推荐

    tcl864安装包

    tcl脚本语言安装包,要安装expect脚本,必须先安装tcl。 一)Tcl 安装 主页: http://www.tcl.tk 下载地址: http://www.tcl.tk/software/tcltk/downloadnow84.tml 1.下载源码包 wget ...

    Tcl/Expect

    Tcl/Expect学习心得:等待操作是很有用的及COM通讯脚本

    expect交互式执行网络命令

    expect实现 shell 交互式网络命令,插件安装: tar xzvf expect5.45.tar.gz cd expect5.45 ./configure --prefix=/usr/expect --with-tcl=/usr/tcl/lib --with-...ln -s /usr/tcl/bin/expect /usr/expect/bin/expect

    用expect 实现切换用户时自动输入密码.txt

    注意:这里强调一下执行脚本时要注意的地方,不能按照习惯来用sh ***.sh来这行expect的程序,会提示找不到命令,因为expect用的不是bash所以会报错。执行的时候直接./***.sh就可以了。~切记! 应用二: 从...

    expect-5.45-sol9-sparc-local.gz

    expect-5.45-sol9-sparc-local.gz solaris9 安装expect工具方法 在网站http://www.sunfreeware.com/indexsparc9.html下载到对应系统本版软件包 需要下载4个软件包分别是: tcl-8.5a4-sol9-sparc-local.gz tk-8.5a4-...

    Tcl/tk 宝典之一 - Expect讲解

    这个是讲解Tcl/tk 中Expect用法的书,讲的同时结合实例,很易懂。绝对是入门的好材料。

    linux命令expect实现ssh登陆.docx

    Expect 是一个基于 Tcl 语言的自动化工具,广泛应用于自动化脚本的编写和测试。 Expect 可以模拟用户交互,自动输入命令和参数,实现自动化登录、文件传输、数据备份等操作。下面我们将详细介绍如何使用 Expect 实现...

    expect-5.45-sol10-sparc-local.gz

    expect-5.45-sol10-sparc-local.gz solaris9 安装expect工具方法 在网站http://www.sunfreeware.com/indexsparc9.html下载到对应系统本版软件包 需要下载4个软件包分别是: tcl-8.5a4-sol9-sparc-local.gz tk-8.5a4-...

    expect-5.45-14.el7_1.x86_64.zip 在 centos7 上测试通过

    [root@localhost expect]# rpm -ivh expect-5.45-14.el7_1.x86_64.rpm 准备中... ################################# [100%] 正在升级/安装... 1:expect-5.45-14.el7_1 ################################# [100%] ...

    Tcl语言,expect脚本

    Tcl,Tcl语言,expect,可用于交互式自动化脚本,方便自动化管理服务器。

    #!/usr/bin/expect

    NULL 博文链接:https://j2ee2009.iteye.com/blog/824829

    expect5.43.0和tcl8.4.11.zip

    expect据说是交互性很强的脚本语言,但是expect依赖于tcl,但linux系统里一般不自带安装tcl,需要手动安装

    expect.deb离线包(包含tcl8.5_8.5.11-1ubuntu1和expect_5.45-2)

    expect.deb离线包,包含 expect_5.45-2_amd64.deb tcl8.5_8.5.11-1ubuntu1_amd64.deb两个 使用命令 dpkg --install expect_5.45-2_amd64.deb dpkg --install tcl8.5_8.5.11-1ubuntu1_amd64.deb 可以直接进行安装,不...

    禅道自动化测试框架ZenTaoATF.zip

    ZenTaoATF是由禅道开发团队开发的自动化测试框架,它只有一个脚本文件,可以支持各种脚本语言编写的自动化测试脚本,语法简单,使用灵活,后续会和禅道项目管理软件进行绑定和集成。 它的基本工作原理如下: 首先,...

    expect_tcl.zip

    centos7、centos8安装expect及tcl所需的安装包源码,以及安装脚本install_expect.sh 下载完拷贝到linux系统文件目录下,unzip expect_tcl.zip,然后执行sh install_...安装完毕后,可以输入expect测试能否执行expect命令

    Tcl/expect sms gateway-开源

    使用tcl / expect编写的简单sms网关,使用mysql作为文本消息的数据源。

    tcl-expect

    简单介绍tcl语言以和expect语法以及使用方法

    SigmationTF自动化测试教程

    SigmationTF的组网方法、设备管理、自动化测试脚本开发进行了详细讨论。 读者阅读本书前须具备一定的软件工程与测试理论基础、TCP/IP网络协议知 识、交换机和终端服务器等网络设备的使用经验,熟悉Windows和Linux...

    UFT自动化测试框架.ppt

    * testScript:存放测试脚本,全部存储为vbs文件。 * Result:里面有个excel表保存测试结果。 三、模块说明 * IsRun:用于设置项目是否执行,0表示不执行,1表示执行。 * ProName:填写项目的名称,项目名称必须为...

    基于expect自动交互完成批量服务器磁盘空间使用量的查询脚本

    基于expect自动交互完成批量服务器磁盘空间使用量的查询脚本(使用前请先安装expect),文件包含一个 ip列表文件ipList 可执行脚本disk.sh expect脚本 解压并赋予可执行权限,更改ipList文件内的ip和密码,执行fdik....

Global site tag (gtag.js) - Google Analytics