SpirentTestcenter,美国思博伦公司的网络测试仪表,覆盖以太网L2~L7层,使用过的仪表中功能最强大的。

1.SpirentTestcenter的自动化测试场景

测试PC上的AT框架---->Tcl驱动库SIG_Teq_Stc.tcl(加载SpirentTestCenter库)-----(以太网线)----->Stc chassis

Stc的chassis内部命令也是Tcl格式的,但调试时有个缺点,script的执行效果不能即时反应到Spirent TestCenter Application客户端操作界面上,观察结果不方面。

2.SpirentTestcenter的Tcl API组织架构

Spirent TestCenter 所有GUI上提供的功能都有对应的API接口,它的API组织架构是面向对象的,并且提供对诸如Tcl  Java  Perl Ruby C++等多种语言的支持.

3.Spirent TestCenter Tcl API大致格式

STC API通过一系列command/function来操作object,操作的是chassis内部产生的object handle对象句柄,这个handle存在于整个进程之中.

命令格式:

FunctionName   ObjectType/ObjectHandle/DDNpath  attributeName(attributeName必须以"-"开头) attrNameValue(属性名称 值)/DANpath [Value]/relationReference

eg:(以上三种情况)

stc::create  Project

stc::get $project_handle

stc::create Project.Port    /    stc::get $project_handle.Port

stc::get $port -location   /   stc::get $port -active -location

stc::config $port -active false -location "//10.1.1.1/1/1"

stc::create $streamblock -under $port  -frameconfig ""  -ethernet.EthernetII.etherType 880B  /  stc::config $project -Port.active false  /  stc::get $project -Port.active

stc::get $port1 -children  (children里面是一对相关的对象属性)

也有一些命令后面是直接跟一些具体的值的,如:

stc::connect //172.168.1.1          stc::reserve //172.168.1.1/1/1          stc::sleep 5

path的表示方式:

• Direct-Descendant Notation (DDN)         直接子代符号

• Descendant-Attribute Notation (DAN)

• Indexed Notation (DDN and DAN)

eg:

stc::config $project.Port -active false -location "//10.1.1.1/1/1"

stc::config $project -port(1).active false -port(2).active false

set enabled [stc::get $port1 -StreamBlock(2).enableControlPlane]

其基本命令都是stc::xxx,这里stc::表示STC的命名空间来区分确认函数,并且函数名都小写,对象名和属性名不区分大小写

常用的“xxx”有如下:

apply   所有配置方面的command敲入后都要stc::apply下 

config

connect

create

delete

disconnect

get

help

log

perform

release

reserve

sleep        解释器停止执行一段时间

subscribe

unsubscribe

waitUntilComplete

4.一些Stc AT时的注意事项

(1)Stc的客户端Spirent TestCenter Application安装完成后目录下有定义Stc chassis内部Tcl命令的.tcl库文件:

C:/Program Files/Spirent Communications/Spirent TestCenter 3.55/Spirent TestCenter Application/SpirentTestCenter.tcl.

这个库文件需要写入到Tcl包目录下的pkgIndex.tcl,以便SIG_Teq_Stc.tcl文件里可以“package require SpirentTestCenter”找到并加载该Tcl库

(2)Spirent TestCenter Application没有自带的Tcl interrupt,所以操作Stc时可以使用任何一个Tcl interrupt,只要把用到的库文件都加载了即可

本文只是简单的Spirent TestCenter自动化原理的介绍,详细的SpirentTestCenter Tcl API可以参阅具体的API官方文档。

SpirentTestcenter测试仪的自动化的更多相关文章

  1. Xena测试仪的自动化

    Xena,Xena Networks公司的网络测试仪,也能覆盖以太网L2~L7层测试仪,但功能较简单,界面也很简洁,用起来比较直观方便. 1.Xena的自动化测试场景 测试PC上的AT框架--> ...

  2. Ixia测试仪的自动化

    Ixia,美国Ixia公司的通信网络测试仪. 1.Ixia的自动化测试场景 测试PC(安装IxOS)AT框架-->Tcl驱动库SIG_Teq_Ixia.tcl(加载 IxTclHal库)---- ...

  3. 自动化SQL注入工具 sqlmap 使用手册

    0x00 sqlmap介绍 什么是sqlmap? sqlmap是一个开源的渗透测试工具,它自动化了检测和利用SQL注入缺陷 以及接管数据库服务器的过程.它配备了一个强大的检测引擎 ,以及终极渗透测试仪 ...

  4. 构建一个基本的前端自动化开发环境 —— 基于 Gulp 的前端集成解决方案(四)

    通过前面几节的准备工作,对于 npm / node / gulp 应该已经有了基本的认识,本节主要介绍如何构建一个基本的前端自动化开发环境. 下面将逐步构建一个可以自动编译 sass 文件.压缩 ja ...

  5. 细说前端自动化打包工具--webpack

    背景 记得2004年的时候,互联网开发就是做网页,那时也没有前端和后端的区分,有时一个网站就是一些纯静态的html,通过链接组织在一起.用过Dreamweaver的都知道,做网页就像用word编辑文档 ...

  6. python自动化测试(2)-自动化基本技术原理

    python自动化测试(2) 自动化基本技术原理 1   概述 在之前的文章里面提到过:做自动化的首要本领就是要会 透过现象看本质 ,落实到实际的IT工作中就是 透过界面看数据. 掌握上面的这样的本领 ...

  7. Appium移动自动化框架

    引言:Appium 是一个移动端自动化测试开源工具,可以针对不同的平台用一套API来编写测试用例.本文对Appium自动化测试框架的功能进行了概括. 本文选自<软件自动化测试开发>. Ap ...

  8. 前端自动化构建工具gulp记录

    一.安装 1)安装nodejs 通过nodejs的npm安装gulp,插件也可以通过npm安装.windows系统是个.msi工具,只要一直下一步即可,软件会自动在写入环境变量中,这样就能在cmd命令 ...

  9. CYQ.Data 从入门到放弃ORM系列:开篇:自动化框架编程思维

    前言: 随着CYQ.Data 开始回归免费使用之后,发现用户的情绪越来越激动,为了保持这持续的激动性,让我有了开源的念头. 同时,由于框架经过这5-6年来的不断演进,以前发的早期教程已经太落后了,包括 ...

随机推荐

  1. wine

    sudo dpkg --add-architecture i386 sudo add-apt-repository ppa:wine/wine-buildssudo apt-get update su ...

  2. mongodb 对内嵌文档(数组) group分页查询,并设置查询条件

    文档示例Account的其中一条记录: // collection: Account { "_id" : ObjectId("5843e38e535f3708f759b2 ...

  3. Xcode插件安装 错选了Skip Bundle解决办法

    1.首先找到Xcode的UUID,在终端运行defaults read /Applications/Xcode.app/Contents/Info DVTPlugInCompatibilityUUID ...

  4. Add Digits, Maximum Depth of BinaryTree, Search for a Range, Single Number,Find the Difference

    最近做的题记录下. 258. Add Digits Given a non-negative integer num, repeatedly add all its digits until the ...

  5. MyBatis学习(三)、动态SQL语句

    三.动态SQL语句 有些时候,sql语句where条件中,需要一些安全判断,例如按某一条件查询时如果传入的参数是空,此时查询出的结果很可能是空的,也许我们需要参数为空时,是查出全部的信息.使用Orac ...

  6. bzoj1091: [SCOI2003]切割多边形

    Description 有一个凸p边形(p<=8),我们希望通过切割得到它.一开始的时候,你有一个n*m的矩形,即它的四角的坐标分别为(0,0), (0,m), (n,0), (n,m).每次你 ...

  7. CSS3常用30种选择器总结

    CSS3常用30种选择器总结 HTML5/CSS3时尚的圆盘时钟动画 带当前日期 www.html5tricks.com/demo/html5-css3-clock-with-date/index.h ...

  8. JAVA源码走读(二)二分查找与Arrays类

    给数组赋值:通过fill方法. 对数组排序:通过sort方法,按升序.比较数组:通过equals方法比较数组中元素值是否相等.查找数组元素:通过binarySearch方法能对排序好的数组进行二分查找 ...

  9. 错误 1 error C4996: 'scanf': This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. d:\users\vs2013\le

    #define _CRT_SECURE_NO_WARNINGS#include<stdio.h>#include<stdlib.h>void main(){    int nu ...

  10. 脚本 用 scp 拷贝文件

    #!/usr/bin/expect set proj_dir /home/jksong/NewsSpark/openid_for_commonid set tmp_data_dir $proj_dir ...