我正在使用ALMQC 11.52并使用版本化数据库。对于特定测试,我想使用OTA API访问以前的版本。任何人都可以发布一些vb代码来从先前的测试版本中检索测试详细信息字段(TS_USER_15)(我可以使用它来编写java代码)。我所做的是为TS_USER_04字段标记了我签入的每个版本的唯一值。然后我应用了这样的过滤器
private Dispatch generateFilterToBuildTestSet (Dispatch testFactory) throws Throwable {
Dispatch filter = Dispatch.get (testFactory, "Filter").toDispatch();
Dispatch.call(filter, "Clear");
Dispatch.call(filter, "Refresh");
Dispatch.invoke(filter,"Filter",Dispatch.Put,new Object[] {"TS_USER_04", "VALUE"},new int[1]);
return filter;
}
然后我将过滤器提供给testFactory以检索与过滤器匹配的测试。
Dispatch filter = generateFilterToBuildTestSet (testFactory);
String s = Dispatch.get(filter, "Text").changeType(Variant.VariantString).getString();
Dispatch listOfItems = Dispatch.call(testFactory, "NewList", s).toDispatch();
我希望此过滤器返回与TS_USER_04字段匹配的对象版本,然后我可以使用该字段来访问测试详细信息。
VALUE是TS_USER_04
的内容当VALUE包含最新版本测试的内容时,将返回该对象,我可以正常访问测试详细信息字段(TS_USER_15)。代码运行并运行。
当VALUE包含先前版本测试的内容时,不会返回任何对象。
我确信这会奏效。鉴于此过滤器适用于最新版本的测试,我想知道是否有一些ALMQC数据库配置设置可以阻止以前的测试版本检索。如果是这样,任何人都可以扩展。
这是从QC返回的过滤器,它看起来不错
[Filter]{
TableName:TEST,
ColumnName:TS_USER_04,
LogicalFilter:VALUE,
VisualFilter:VALUE,
NO_CASE:
}
我非常感谢您的帮助,感谢您的期待。