是否可以在Silk4Test中动态获取记录字段?
假设我们有这样的记录:
[-] type testRec is record
[ ] string a
[ ] int b
[ ] string c
[ ] string d
这个清单:
list of string lsFields = {"a", "d"}
有没有办法只将lsFields中的字段设置为特定值?假设我需要将它们设置为“TEST”,我该怎么做?它甚至可能吗?
答案 0 :(得分:1)
是的,应该可以使用@
- 运算符,它允许将字符串内容作为4Test代码执行。
如下所示(我只是从头顶输入,不确定它是否在语法上正确,此刻无法访问Silk Test。)
[ ] string fieldName
[-] for each fieldName in lsFields
[ ] rec.@fieldName = someValue
此代码的作用是将fieldName
的内容解释为rec
的成员并指定someValue
。
根据您可能希望将其包装在do-except
- 块中的上下文,因为如果该成员不存在,它将引发异常。或者,如果记录包含所需字段,您还可以使用IsDefined
- 函数进行检查。