Jon*_*röm 5 testing qtp qc hp-quality-center
我想使用Label of字段而不是名称来更新QC中的自定义用户字段
目前我们这样做
Set currentRun = QCUtil.CurrentRun
currentRun.Field("RN_USER_03") = 1
currentRun.Post
Run Code Online (Sandbox Code Playgroud)
但我想这样做
Set currentRun = QCUtil.CurrentRun
currentRun.Field("Data Rows Passed") = 4
currentRun.Post
Run Code Online (Sandbox Code Playgroud)
但我找不到这样做的方法.有任何想法吗?
暗示所有标签都是唯一的(我对此表示怀疑..):
您可以创建一个函数,该函数接受标签,在定义自定义字段的 QC 表中搜索正确的字段定义,然后返回字段名称。然后使用函数的结果值作为索引属性的索引。
假设该函数被称为“GetNameOfLabel”,那么调用者的代码将如下所示:
Set currentRun = QCUtil.CurrentRun
currentRun.Field(GetNameOfLabel ("Data Rows Passed")) = 1
currentRun.Post
Run Code Online (Sandbox Code Playgroud)
当然,该函数实际上并不是微不足道的,但在深入研究 QC 数据模型并找到一种通过 SQL 从数据库中获取名称的有效方法后就足够简单了。
或者,该函数可以在数组或字典中查找名称,然后您必须维护该字典,但不必每次查找都访问数据库。
缺点:
如果查找数据库:
如果在数组或字典中查找:
我会选择 array/dictionary-initialized-from-db-idea。或者,如果您能够接受已经提出的恒定想法,那么这是一个不错的选择。考虑到 QC 自定义脚本中不存在独立于会话的范围,SQL 访问思想可能会真正降低性能,因为它必须为每个新用户会话执行。这就是为什么我也对这个不变的想法+1。
| 归档时间: |
|
| 查看次数: |
2227 次 |
| 最近记录: |