如何使用c#和ASP.net连接HP质量中心
本文关键字:HP 连接 net 何使用 ASP | 更新日期: 2023-09-27 18:14:48
我希望使用c#和ASP.net连接HP质量中心。有人可以建议我使用。net web应用程序连接它的方法。此外,我是否需要在托管应用程序的服务器上进行任何安装?
下面是我找到的一些java代码,我想要这样的东西
//Connect to QC
ITDConnection itdc= ClassFactory.createTDConnection();
System.out.println(itdc.connected());
itdc.initConnectionEx("http://QC.com/qcbin");
System.out.println(itdc.connected());
itdc.connectProjectEx("DomainA", "ProjectB", "UserID", "Password");
有两种方法。这些是使用:
-
OTA客户端(开放测试架构)
这是从第三方应用程序连接HP QC/ALM的传统方式。该API已经可用多年,并且在与QC的交互方面相当成熟。然而,我认为这个API是基于COM的,并且很快就会过时。因此,我不建议使用它来构建广泛的定制QC线束。
-
REST API
HP在最近的几个版本中已经开始为QC提供REST API。最新版本的QC(现在称为HP ALM 11.5)中的REST API似乎相当成熟。我想说这样做的主要优点是速度和更好的互操作性,因为我相信REST将很快成为公开远程服务的主流标准之一。
这是一些关于你的选择的背景。但是,要给出一些c#代码的示例,请参阅下面的代码片段。
using TDAPIOLELib; // This is the QTP interop library
private TDConnection qcConnection;
private string Connect()
{
string status;
status = "Initialising";
qcConnection.InitConnectionEx("<QC URL>");
qcConnection.ConnectProjectEx("<QC Domain>", "<QC Project>", "<LoginUserId>", "<UserPassword>");
if (qcConnection.ProjectConnected)
{
status = "Connected";
}
return status;
}
public void GetTestsInTestSet(string testFolder, string testSetName)
{
TDAPIOLELib.List tsTestList = new TDAPIOLELib.List();
try
{
if (qcConnection.ProjectConnected)
{
TestSetFactory tSetFact = (TestSetFactory)qcConnection.TestSetFactory;
TestSetTreeManager tsTreeMgr = (TestSetTreeManager)qcConnection.TestSetTreeManager;
TestSetFolder tsFolder = (TestSetFolder)tsTreeMgr.get_NodeByPath(testFolder);
List tsList = tsFolder.FindTestSets(testSetName, false, null);
foreach (TestSet testSet in tsList)
{
TestSetFolder TSFolder = (TestSetFolder)testSet.TestSetFolder;
TSTestFactory TSTestFactory = (TSTestFactory)testSet.TSTestFactory;
tsTestList = TSTestFactory.NewList("");
}
foreach (TSTest test in tsTestList)
{
System.Diagnostics.Debug.Writeln(test[qcFrameworkTestIDFieldName]);
}
}
else
{
Console.WriteLine("QC connection failed");
}
}
catch (Exception e)
{
throw e;
}
}
指出:
- 要获得QC互操作库,请查找otacclient .dll。一旦你第一次成功地从你的机器上访问QC,它就会下载到你的本地机器上。
- HP ALM11.50 - REST API参考:http://support.openview.hp.com/selfsolve/document/KM1413621/binary/ALM11.50_REST_API_Ref.html?searchIdentifier=4a65d813%3a140830b7b59%3a6cfa&resultType=document
- HP ALM11.50 - OTA API参考:http://support.openview.hp.com/selfsolve/document/KM1413612/binary/ALM11.50_OpenTest_Architect_API_Ref.html?searchIdentifier=4a65d813%3a140830b7b59%3a6e9b&resultType=document 一般来说,我发现在c#中使用OTA API非常乏味。即使从参考指南中,有时也很难找出一些对象类型和类型转换。使用VB。Net可能会使它更容易一点,因为我相信你不需要做这么多的铸造。然而,如果我必须重新来过,我肯定会首先考虑REST API。
祝一切顺利。
S
在HP ALM 11.50 - REST API Ref中没有执行测试集的实现。所以要执行测试,你需要使用OTA API。