zoukankan      html  css  js  c++  java
  • 使用C#调用QC的接口

    本文主要介绍了,如何使用开发工具C#.net来调用QC的接口,从而实现对QC中的测试用例等对象的读写。本文涉及的软件有:

    1. Quality Center 
    2. Visual Studio 2005

    QC是很多测试团队都在使用的测试管理工具,它提供的功能基本可以满足要求,不过有时我们需要读写QC中的数据,做二次开发。比如说,批量导入测试用例,导出bug数据用于统计分析。

    首先,在打开QC的时候,会下载一些客户端控件,请确保本地的目录存在以下这个文件“C:\Program Files\Common Files\Mercury Interactive\Quality Center\OTAClient.dll”,然后打开VS2005,创建一个C#控制台程序,然后添加COM引用“OTA COM”。

    下面可以编写代码来访问QC的接口了,接口对象都在“TDAPIOLELib”这个NameSpace下面。首先使用TDConnection连接QC:

    TDConnection tdconn = new TDConnectionClass();
    tdconn.InitConnectionEx(qc_serverURL);
    tdconn.Login(qc_user, qc_password);
    tdconn.Connect(qc_domain, qc_proj);

    要读取测试用例目录,要先创建一个TreeManager对象:

    TreeManager tree = tdconn.TreeManager as TreeManager;

    然后读取某个目录节点:

    SubjectNode node = tree.get_NodeByPath(qc_folder) as SubjectNode;

    下面要读取测试用例对象,就必须使用“TestFactory”对象,这个对象是SubjectNode的一个属性:

    TestFactory testFac = node.TestFactory as TestFactory;

    然后利用这个对象来读取测试用例的List:

    List tests = testFac.NewList(null);

    在使用foreach来遍历这个目录下的所有用例对象:

    foreach (Test t in tests){}

    读取用例中的步骤,只要使用用例对象中的DesignStepFactory即可,这里不再说明。

    下面说一下利用接口写入数据的方法。仍然使用上面的SubjectNode node对象,它提供了一个AddItem方法来添加新目录,并返回这个新建的目录对象:

    SysTreeNode res = node.AddNode("NewNode");

    添加用例还是要用到TestFactory对象:

    Test res = testFac.AddItem(testName) as Test;
    res.Post();//提交修改更新

    DesignStepFactory stepFac = res.DesignStepFactory as DesignStepFactory;
    DesignStep newstep = stepFac.AddItem(StepName) as DesignStep;

    别忘了在代码中截取异常,然后释放与QC的连接,否则连接会越来越多,影响服务器的正常工作:

    tdconn.DisconnectProject();
    tdconn.Logout();
    tdconn.ReleaseConnection();
    tdconn = null;

    读写bug信息的代码这里就不说明了,大家自己试试。

  • 相关阅读:
    从句分析
    artDialog ( v 6.0.2 ) content 参数引入页面 html 内容
    Java实现 LeetCode 13 罗马数字转整数
    Java实现 LeetCode 13 罗马数字转整数
    Java实现 LeetCode 13 罗马数字转整数
    Java实现 LeetCode 12 整数转罗马数字
    Java实现 LeetCode 12 整数转罗马数字
    Java实现 LeetCode 12 整数转罗马数字
    Java实现 LeetCode 11 盛最多水的容器
    Java实现 LeetCode 11 盛最多水的容器
  • 原文地址:https://www.cnblogs.com/powerson/p/2062069.html
Copyright © 2011-2022 走看看