报文模拟测试(含8583)工具介绍

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

回归测试工具用户手册

目录

目录 (1)

工具描述 (2)

功能特点 (3)

适用范围 (3)

文件目录结构说明 (3)

case目录 (3)

file目录 (4)

ini目录 (4)

log目录 (4)

report目录 (4)

主界面 (4)

使用说明 (4)

密钥配置界面 (4)

通讯参数配置界面 (5)

修改案例界面 (5)

文本模式修改界面 (6)

设置案例集界面 (6)

报文属性设置 (6)

常量设置界面 (6)

发送案例 (6)

发送次数 (6)

清空 (6)

终止发送 (6)

清空日志 (7)

文件格式说明 (7)

config.ini 例子 (7)

Case.ini 例子 (8)

iso.ini 例子 (8)

交易文件的配置 (9)

正交易配置 (9)

反交易配置 (10)

可选配置 (10)

支持函数列表 (11)

String (11)

time (11)

Req (11)

Rev (11)

Def (12)

Tlv (12)

Tlvasc (12)

更新计划 (12)

修改记录 (13)

工具描述

系统用Visual C++软件开发而成,数据存储采用文本文件进行保存,便于开发测试人员修改、共享测试案例。

本软件可以模拟不同类型的交易报文,可以对交易测试案例进行统一管理,并可以进行简单时间统计和成功率统计。

使用本软件可以减轻传统测试过程中的修改-编译-测试-的循环等待时间,在测试过程中可以根据需要随时更改报文内容。

本软件支持任意格式的报文,可以模拟不同格式的报文,如定长,变长,XML,8583等报文。每个域的内容可以是常量,也可以支持约定的表达式。

本软件可以根据需要设置对应答相关域进行合法性检查,可以校验应答报文和请求报文的匹配关系,可以校验域的长度,校验域的内容等。

本软件支持MAC的生成、校验以及PIN加密处理,同时可以根据需要调整是否需要进行MAC和PIN加密。

本软件运行程序无需安装,只需将相关程序和测试案例文件拷贝到相应的文件夹下即可执行。

本系统目前局限性如下:

目前仅对8583格式报文进行了解包处理,显示应答报文的各个域和内容;而对于其他非8583的报文仅仅列出发送报文和接收报文的实际内容。

目前通讯协议仅支持短连接协议;因此目前对于多条发送只能逐条进行发送,暂不支持并发。

功能特点

本软件主要功能实现全部基于脚本编写,改造方便,可自由扩充功能。

脚本支持常用语法if/elseif/else if/end if , while/end while , for/end for 等。

脚本支持常用字符串功能string.len(),string.format()等。

脚本支持常用时间处理功能time.format(),time.clock()等。

脚本支持扩展动态库。

脚本支持用户自定义函数。

暂只提供经编译后的脚本(*.e 文件)

需要更多功能请联系作者:

部分函数示例:

适用范围 可以模拟各类报文; 针对8583规范,可以模拟不同的8583规范; 如支持:多渠道项目中的各个规范接口(终端1.0,终端2.0,商户1.0,商户2.0,渠道1.0,渠道2.0,CUPS 发起等发起方的报文规范)。 针对定长,XML ,变长等报文,目前仅显示报文内容。 文件目录结构说明

程序目录结构如下所示:

case 目录 每个目录下配置了对应的iso 格式标准,案例配置文件和案例文件

如xml 目录下:

包含case.ini ,iso.ini,*.txt

其中case.ini 指定了案例的文件,在选择案例的时候根据输入内容查找到对应的案例文件。 其中iso.ini 为相应的8583配置接口。

其中*.txt 为相应的案例配置文件。

function resp_count(caseroot)

static str; static send,recv,succ; static rate1,rate2; send = caseroot.sendcount; recv = caseroot.recvcount; succ = caseroot.succount; if ( send > 0) rate1 = string.format("%.2f",100*recv/send); rate2 = string.format("%.2f",100*succ/send); else rate1 = "--"; rate2 = "--" end if

str = "[统计]累计发送:" .. send .. ",累计收到=" .. recv ..",交易成功=" .. succ .. ","; str = str .. " 回复率=" .. rate1 .."%" .. " ,成功率=" .. rate2 .. "%";

return str end function function display_count(caseroot)

static str;

static tps;

if (sttime >0)

tps = string.format("%.2f",1/caseroot.calltime); print("本次交易耗时...",1000*sttime,"毫秒","平均耗时:",1000*caseroot.calltime,"毫秒"); end if str = resp_count(caseroot);

color_print(22,str);

return str;

end function

相关文档
最新文档