4.3.4 字符串测试
字符串测试是将字符串结果与限度值进行比较,如果内容相同,则测试通过。其重要属性有Step.Result.String、Step.Limits、Step.DataSource。字符串测试和数值限度测试步骤基本一样,只是数据类型由数值型变为字符串型(如图4-36所示)。
图4-36 字符串测试步骤的数据空间
在模块页面,声明使用Tests.dll的函数为StringValueTest,我们以此来介绍字符串测试的使用方法。注意,由于StringValueTest函数的输入参数String是字符串类型的,在TestStand中,会强制要求预设定字符串的缓存大小,在此可以设置一个稍大的值(如100),如图4-37所示。
图4-37 字符串测试特定配置页(模块)
它的默认数据源是Step.Result.String,而在限度页面中,比较类型可以选择“Ignore Case”(忽略大小写)或“Case Sensitive”,在“Expected String Value”中输入预期的字符串,字符串可以是常量或表达式,如图4-38所示。
图4-38 字符串测试特定配置页(限度)
分析字符串测试步骤工作过程:首先数据源是Step.Result.String,数据源会和限度值进行比较,如果它与限度值内容一致,则步骤状态为合格,否则为失败;然后模块页面中代码模块的输入参数使用了Step.Result.String,因此代码模块会影响数据源,数据源继而影响步骤状态。在字符串测试步骤中,上述逻辑可以用下面一段伪码表示:
在范例资源的第4章练习中,附有例程<Exercises>\Chapter 4\Tests\StringValueTest.seq,读者可以通过菜单命令“ExecuteSingle Pass”运行该范例并观察结果。如果在限度页面中,将“Hello”改为其他字符串,步骤的状态是什么呢?