测试人员
评估特征的一个或多个测试,并根据测试结果进行该功能。测试可以包括任何FME允许的操作数。
输入端口
![关闭](http://www.baooytra.com/docs/fme/2017.0/html/FME_Desktop_Documentation/FME_Transformers/Transformers/../Skins/Default/Stylesheets/Images/transparent.gif)
此变形器接受任何功能。
输出端口
![关闭](http://www.baooytra.com/docs/fme/2017.0/html/FME_Desktop_Documentation/FME_Transformers/Transformers/../Skins/Default/Stylesheets/Images/transparent.gif)
如果测试通过,特性将通过通过了端口。
![关闭](http://www.baooytra.com/docs/fme/2017.0/html/FME_Desktop_Documentation/FME_Transformers/Transformers/../Skins/Default/Stylesheets/Images/transparent.gif)
如果测试失败,则通过该功能通过失败的端口。
请注意,您可以将多个测试组合到一个测试仪变压器中,并且可以将功能路由到通过了取决于通过标准以下。
参数
![关闭](http://www.baooytra.com/docs/fme/2017.0/html/FME_Desktop_Documentation/FME_Transformers/Transformers/../Skins/Default/Stylesheets/Images/transparent.gif)
这通过标准定义如何在传入特性的最终分类中解释多个子句。可能的选择有:所有测试(和)那一次测试(或),综合测试。
以下是三种选择和相关方案的描述。
设想 | 通过标准 | 描述 |
---|---|---|
输入功能需要一个测试,以便通过传递分类。 | 一次测试(或) | 在这种情况下,只要一个测试子句为真,那么该特性就是Passed。这是一个OR测试(test1或test2或test3)。如果其中任何一个为真,那么结果为真。 |
通过传递的输入功能需要所有测试。 | 所有测试(和) | 这比一个测试(或)更严格(或),因为所有测试必须按顺序传递,因为结果是真的(test1和test2和test3)。 |
创建自己的测试表达式。 当您需要对您希望测试人员进行评估的内容时,这很有用。如果选择此模式,则会出现一个复合表达式字段。 |
综合测试 | 例如,如果要检查属性的值是否在5到10之间,或等于99,则可以设置三个测试条款: 第1条:x> 5 第2条:x <10 第3条:x = 99 (其中x是左值字段中所选属性): 为了正确地获得期望的结果,您需要第1和第2条为真(在5和10之间),或第3条为真(等于99)。 在这种情况下,选择“一个测试”或“所有测试”模式将无法满足测试需求。但是,您可以选择Composite Test并在Composite expression字段中输入以下表达式: ((1和2)或3) 上面的数字对应于“测试条款”表中定义的测试子句。读取时,上述复合表达式表示“必须满足第1条和第2条,或者必须满足第3条”。 |
![关闭](http://www.baooytra.com/docs/fme/2017.0/html/FME_Desktop_Documentation/FME_Transformers/Transformers/../Skins/Default/Stylesheets/Images/transparent.gif)
要用的表达方式通过标准参数是综合测试。表达式可以从中引用一个条款测试条款表使用该子句的行号。
![关闭](http://www.baooytra.com/docs/fme/2017.0/html/FME_Desktop_Documentation/FME_Transformers/Transformers/../Skins/Default/Stylesheets/Images/transparent.gif)
值
这价值列(操作数)可以是文字常数,属性的值,发布的参数或计算值,即上述组合。如果是计算函数,则该函数将在当前功能上执行,结果将用于测试。
运营商
这操作员列是以下之一:=,!=,<,>,<=,> =,在那在范围内那喜欢那包含正则表达式那包含那始于那结尾那类型是那数组,那属性具有值那属性为null.那属性是空字符串,遗漏属性。
一些运算符,例如= and!=,除了在此记录之外的传统行为。当比较运算符=,!=,<,>,<=,> =应用于null,丢失和空字符串值时,三重组都将所有评估为空字符串。因此,它们在这些比较运算符的上下文中成对等于。此外,遵守以下比较排序:
Null,缺失,空字符串< numbers <其他值
运营商喜欢那包含那始于,结尾不区分大小写。其他操作员区分大小写。
其他,此处更详细地描述了较少的传统运算符:
操作员 |
描述 |
例子 |
---|---|---|
在 | 您正在测试某个值的值列表。正确的值是逗号分隔的值列表或范围。 | x = 5,如果x在1,2,3中(no =失败) x = 5,如果x在3-7中(是=通过) |
在范围内 | 值是否在集合符号指定的数字范围内? 在这种表示法中[]s表示包含界限,即[0,8]对应于0<=X<=8。While ()s表示互斥边界,即(0,8)对应于0 |
X=3, if X In Range [3,8] (yes = Passed) x = 3,如果x范围(3,8](no =失败) |
喜欢 | 允许您使用通配符查询。请注意,通配符查询使用百分比符号(%),而不是星号(*)。 此操作员不区分大小写。 此操作员不提供数字模式。 |
x = abcd,如果x相似%bc%(是=通过) |
包含正则表达式 |
值是否包含正则表达式? 此操作员不提供数字模式。 |
x = abcd,如果x包含正则表达式。* bc。* |
包含 | 右值是否出现在左值中? 此操作员不区分大小写。 此操作员不提供数字模式。 |
x = abcd,如果x包含bc(是=传递) |
始于 | 字符串是以这个…开始的吗? 此操作员不区分大小写。 此操作员不提供数字模式。 |
x = abcd,如果x从a开始(是=通过) X=abcd, if X以b开头(no = Failed) |
结尾 | 一个字符串结束了吗? 此操作员不区分大小写。 此操作员不提供数字模式。 |
x = abcd,如果x以d结尾(是=通过) x = abcd,如果x以b结尾(no =失败) |
类型是 | 是否可转换为列出的类型之一的属性的值? 包含的类型是整数,双重,数字和布尔。You may select multiple types, when multiple types are selected, if a feature is convertible to one or more of the listed types it will fast.Integer和Double类型测试是否属性的内容分别表示为整数或浮点数。数字测试如果该值可转换为数字(行为与双倍相同)。布尔测试如果字符串与布尔表示之一匹配(true,true,true,1,false,false,false,0) |
x = 7,如果x是数字(是=传递) x = true,如果x是booelan(是=通过) |
数组, | 是在指定的编码中不包含数据丢失的指定属性的值? | 如果x =本,如果x编码cp932通过日语窗口 如果编码DOS冰岛失败 |
属性具有值 | 属性是否有值? | 如果在“左值”匹配中指定的属性(是=传递) |
属性为null. | 指定的属性是否有空值? 此操作员不提供数字模式。 |
如果在“左值”中指定的属性具有空值(是=传递) 如果在“左值”中指定的属性没有空值(no =失败) |
属性是空字符串 | 指定的属性是否有一个空的字符串值? 此操作员不提供数字模式。 |
如果在“左值”中指定的属性是空字符串(是=传递) 如果在“左值”中指定的属性不是空字符串(否=失败) |
遗漏属性 | 指定的属性是否缺少该功能? 此操作员不提供数字模式。 |
如果在特性中' Left Value '中指定的属性不存在(yes=Passed) 如果属性在' Left Value '中指定在feature中存在(no=Failed) |
如果您选择其中一个运算符:属性是空字符串那属性为null., 或者遗漏属性, 这左上将被认为是一个属性名,而不管所显示的图标。为了迫使测试人员使用属性的值,attrName,作为属性名称,您必须明确地键入@ value (attrName)进入左上场地。
字符串(即范围。模拟)也可以指定。如果要测试包含连字符的值,则这些值应包含在引号中。例如,如果x = ll-27, 然后x在“ll-27”中,“ll-83”是真的。另一方面,X在LL-27,LL-83中会是假的。这是因为LL-27和LL-83被视为两个空字符串范围,因为数字在被视为字符串时比字母更早排序。
否定
如果“
例如,
x = abcd,是'abcde'如果否定,则包含x(答案no =失败的)
x = 5,y = 1,2,3,4是y的x,如果否定(答案是=通过了)
模式
什么时候模式设定为自动或数字如果可能,测试仪将使操作数与数字进行比较,并且否则为字符串。
什么时候模式设定为细绳,测试仪将使操作数与字符串进行比较,并且不会尝试数字转换。
让我们参考可以被解释为数字的字符串,例如“4E5.,作为字母数字字符串。对于字母数字字符串,如果您设置模式至自动或数字,如果其他操作数也是一个字母数字字符串,它将被视为一个数字,此外,使用的操作员可用数字模式。
例如,如果模式设定为自动或数字”,4E5 = 400000.“将通过测试。另一方面,如果你想"4E5 = 400000.“失败测试,设置模式至细绳。
例子
属性 | 测试条件 | 结果 |
---|---|---|
x = ABCD. | x包含ABCD. | 通过了 |
x = a,y =大 | x在y | 失败的 |
x = 100. | X <200. | 通过了 |
x = 4e5. | x = 400000. | 通过,如果模式设置为自动 失败,如果模式设置为字符串 |
的例子模式可以设置为自动或数字:
@area()<100
@Value(Numlanes)> 2
例子模式可以设置为细绳:
“乔”=“杰里”
编辑变换器参数
使用一组菜单选项,可以通过引用工作区中的其他元素来分配转换器参数。更高级的功能,比如高级编辑器和算术编辑器,也可以在一些转换器中使用。要访问这些选项的菜单,请单击除了适用的参数。有关更多信息,请参见变换器参数菜单选项。
变压器类别
变压器的历史
该变压器更换了attributeterter和entiveister变形金刚。
搜索FME知识中心
搜索有关此变压器的样本和信息FME知识中心。
标签关键词:attributeterter“比较模式”一般性意见“通过标准”“测试条款”