控制在C#中的QTP测试,从QTP数据表中获取值

控制在C#中的QTP测试,从QTP数据表中获取值,c#,qtp,C#,Qtp,根据这条线索: 我面临着另一个问题 我使用的是QTP11.0,我用C代码控制它。我可以按名称检索所有对象 现在,我的目标是测试在不同记录期间使用的输入值(从excel工作表加载到QTP Resources表) 测试很容易编写,但将我的C#代码与QTP vb脚本连接起来更难 在我的QTObjectModelLib库中,我可以返回一个动态数据表: dynamic dataTable = qtpApp.Test.LastRunResults.DataTable 但是我对这类物体应该是什么样的呢 我不

根据这条线索:

我面临着另一个问题

我使用的是QTP11.0,我用C代码控制它。我可以按名称检索所有对象

现在,我的目标是测试在不同记录期间使用的输入值(从excel工作表加载到QTP Resources表)

测试很容易编写,但将我的C#代码与QTP vb脚本连接起来更难

在我的QTObjectModelLib库中,我可以返回一个动态数据表:

dynamic dataTable = qtpApp.Test.LastRunResults.DataTable
但是我对这类物体应该是什么样的呢

我不知道这是否可能,但解决我的问题的最好方法应该是一个API,它实时返回我的输入值。。。只是一个梦,如果我明白^^

QTP让我向大脑低头:)


谢谢你的帮助;)

不清楚。“QTP资源表”是什么意思?您所引用的LastRunResults属性是运行结果的属性。我猜您正在寻找QTP支持的数据表,以参数化测试中使用的值。在QTP代码中,DataTable.GlobalSheet.Value(“Hi”)返回全局数据表“Hi”列中当前测试迭代行的值。你想访问它吗?然后使用DataTable对象,该对象与LastRunResults一样在文档中有很好的文档记录。在您的情况下,qtpApp.Test.DataTable可能就是您要查找的内容。嘿,再次感谢您的回答;),“QTP资源表”是QTP GUI上的表(全局表、操作1表等)。所以你是对的;)。我曾经在我的测试文件中参数化过值,我想在测试GUI时访问这些值。通常我已经测试了qtpApp.Test.DataTable(返回一个动态对象)。我明天去看看。感谢“qtpApp.Test.LastRunResults.DataTable”和“qtpApp.Test.DataTable”在我将数据库解析为数据库对象时返回空数据库。您所说的“数据库”对象是什么意思?我想你指的是数据表?qtpApp.Test.DataTable是否返回null,或者是什么?它应该是QTP所称的DataTable对象,DataTable.getSheet(indexOrName)返回一个表示一张数据表的DTSheet对象。