解码器测试指南

该文档的目标为协助开发者完成集成加载器后进行本地测试
  • 根据能力实际实现修改并保存配置文件xtest.toml,修改原则和常用模块见下方。
  • 在xtest目录下,执行./xtest 即可本地执行加载器测试

xtest.toml修改原则

对于测试工具,配置文件,一般情况下,不需要进行大幅度的删除修改,只需要进行需求调整对应的部分:
1.对于指定字段保留,自定义字段可随意删除增加,判断方式是自定义字段用“”标识出来,
2.最小限度修改,根据提供的测试配置文件,仅修改自己需要模块,其他部分不动,例如会话模式下,传入切片大小,一般不需要修改
3.实现功能为主,测试工具的目的是快速察觉是否能够联通整个加载器链路是否能通,因此不必纠结字段参数修改造成的影响

常用修改模块如下

  • 服务组件名及对应接口

    修改[xtest]内的taddrs , 值为组件名@IP:port
    修改[svcMode]内的service字段,值为部署的服务名
    
  • 测试并发及总次数

    按需修改[svcMode]内的multiThr(并发数),loopCnt(请求总次数)
    
  • 请求模式

    [svcMode]内的sessMode,true:会话模式 false:非会话模式
    
  • 功能参数对

    修改[parameter]内的键值对,
    若不需要传入功能参数对信息,则不写键值对,[parameter]字段保留
    
  • 传入参数

    修改[data]内指定的输入输出字段描述,该字段必须保留payload与expect字段
    
  • 输入描述字段

    修改inputSrc的值,值为指定输入文件的路径
    修改sliceOn的值,值为切片开关, false:关闭切换, true:开启切片,非会话模式关闭,会话模式打开
    修改name的值,值为插件内获取的对应pDataList内key
    修改type的值,值为插件内获取的对应pDataList内type
    修改describe的值,值为插件内获取的对应pDataList内desc
    
  • 输出描述字段

    修改name的值,对应输出的pDataList的key
    修改type的值,对应输出的pDataList的type
    修改describe的值,对应输出的pDataList的desc
    

附:配置文件内容

[xtest]
taddrs="AIservice@127.0.0.1:5090" # 指定服务名与对应的ip地址
trace-ip = "172.16.51.13"         # trace日志地址

[svcMode]                        # 测试工具启动时的基本配置,包括并发,路数等
service = "AIservice"           # 请求目标服务名称, eg:sms
svcId = "s12345678"             # 服务id
timeout = 1000                  # 服务超时时间, 对应服务端waitTime
multiThr = 50                   # 请求并发数
loopCnt = 100                   # 请求总次数
sessMode = false                # 服务请求模式. true:会话模式 false:非会话模式
linearMs = 5000                 # 并发压测线性增长区间,单位:ms
perfOn=false                    # 是否开启性能测试,性能测试总次数,输出为时延结果,默认不开启功能
perfLevel=1                     # 非会话模式默认0
                                #会话模式0: 从发第一帧请求数据到接收最后一块响应结果的时延
                                #会话模式1:首结果(发送第一帧请求数据到接收第一块响应结果的时延)
                                #会话模式2:尾结果(发送最后一帧请求数据到收到最后一块响应结果的时延)

[header]                         # 平台控制参数,不需要修改
"appid" = "100IME"              # 平台控制参数
"uid" = "1234567890"

[parameter]                        # 用户传递的功能参数对,在会话模式wrapperCreate,非会话模式wrapperExec的传入参数pParamList内获取
"ctrl" = "hahatestzsli"         # 用户功能参数

[data]                            # 用户传入参数,根据需求编写参数,输入参数,在会话模式wrapperWrite,非会话模式wrapperExec的传入参数                                            # pDataList内获取
payload = "data1;data2"         # 输入数据流键值对,多个数据流以";"分割,如"data1;data2",值为配置文件内对应数据输入描述字段
expect = "result"               # 输出数据流键值对,多个数据流以";"分割

[data1]                          # 输入数据流data1描述
inputSrc = "./image"            # 上行数据流数据源, 配置文件路径(配置为目录则循环读取目录中文件),当需要输入非文件,需要将非文件信息转换成文件信息,例                                  #    如文本信息,创建文件写入数据,在此配置文件路径
sliceOn = false                 # 切片开关, false:关闭切换, true:开启切片,非会话模式关闭,会话模式打开
sliceSize = 1280                # 上行数据切片大小,用于会话模式: byte
interval = 40                   # 上行数据发包间隔,用于会话模式: ms. 注:动态校准,每个包间隔非严格interval
name = "input1"                 # 输入数据流data1对应的key值
type = "image"                  # 数据类型,支持"audio","text","image","video"
describe = "encoding=jpg"       # 数据描述信息,多个描述信息以";"分割,如:"k1=v1;k2=v2"
                                # 图像支持如下属性:"encoding", 如"encoding=jpg"

[data2]                          # 输入数据流data1描述
inputSrc = "./image"            # 上行数据流数据源, 配置文件路径(配置为目录则循环读取目录中文件),当需要输入非文件,需要将非文件信息转换成文件信息,例                                  #    如文本信息,创建文件写入数据,在此配置文件路径
sliceOn = false                 # 切片开关, false:关闭切换, true:开启切片,非会话模式关闭,会话模式打开
sliceSize = 1280                # 上行数据切片大小,用于会话模式: byte
interval = 40                   # 上行数据发包间隔,用于会话模式: ms. 注:动态校准,每个包间隔非严格interval
name = "input1"                 # 输入数据流data1对应的key值
type = "image"                  # 数据类型,支持"audio","text","image","video"
describe = "encoding=jpg"       # 数据描述信息,多个描述信息以";"分割,如:"k1=v1;k2=v2"
                                # 图像支持如下属性:"encoding", 如"encoding=jpg"

[result]                        # 输出数据流描述
name = "result"                 # 输出数据段名称,与接口定义部分保持一致
type = "text"                   # 输出数据类型,支持"audio","text","image","video"
describe = "encoding=utf8"      # 数据描述信息,多个描述信息以";"分割
                                # 文本支持如下属性:"encoding","compress",     如"encoding=utf8;compress=gzip"

[downstream]                    # 下行数据流存储输出
output = 0                      # 输出方式: 0:输出至公共文件outputDst 1:以独立文件形式输出至目录outputDst(文件名:sid+**) 2:输出至终端
outputDst = "./log/result"      # 响应数据输出目标, 若output=0则配置目录, output=1则配置文件

[log]
file = "./log/xtest.log"        # 日志文件名
level = "debug"                 # 日志打印等级
size = 100                      # 日志文件大小
count = 20                      # 日志备份数量
async = 0                       # 异步开关
die = 30

[trace]
able = 0                        # 是否开启trace日志

results matching ""

    No results matching ""