1.下载相关的jar包

2.获取到testlink的url和key,注意:url不是testlink的连接地址,是连接地址+/lib/api/xmlrpc.php

3.测试是否连接成功

	public static void main(String args[]) {
String url = "http://test.tl.gmsd.lan/lib/api/xmlrpc.php";
String devKey = "223f929e98e3d74fa3c000b67668e305";
TestLinkAPI api = null; URL testlinkURL = null; try {
testlinkURL = new URL(url);
} catch ( MalformedURLException mue ) {
mue.printStackTrace( System.err );
System.exit(-1);
} //api = new
try {
api = new TestLinkAPI(testlinkURL, devKey);
} catch( Exception te) {
te.printStackTrace( System.err );
System.exit(-1);
} System.out.println(api.ping());
}

  运行后,出现hello即表明连接成功

4. 更改测试用例执行结果

        /*批量根据用例id执行*/
TestPlan tp = api.getTestPlanByName("XXXX((2015/7/21-2015/7/30)", "交易系统"); String buildName = "XXXX";
Integer testPlanId = tp.getId(); TestSuite[] ts = api.getTestSuitesForTestPlan(tp.getId());
System.out.println(ts.length);
TestCaseDetails tcd = null;
int index = 0;
for(int i=0;i<ts.length;i++) {
TestCase[] tc = api.getTestCasesForTestSuite(ts[i].getId(), true, tcd);
//System.out.println(tc.length);
System.out.println(ts[i].getName());
for(int j=0;j<tc.length;j++) {
Integer testCaseId = tc[j].getId();
// api.reportTCResult(testCaseId, null, testPlanId, ExecutionStatus.PASSED, null, buildName, "自动化上传结果的备注", null, null, null, null, null, null);
//api.createTestPlan("testPlanqjf1", projectName, notes, isActive, isPublic)
} index += tc.length;
}
System.out.println("共执行 "+index+" 条用例");

/*跟进用例id更改*/

//获取测试计划id
Integer testPlanId = api.getTestPlanByName("新增还款方式(最新)", "交易系统").getId();
String buildName = "交易新增还款方式";

Integer testCaseId = 3734;

api.reportTCResult(testCaseId, null, testPlanId, ExecutionStatus.FAILED, null, buildName, "自动化上传结果的备注", null, null, null, null, null, null);

  

        /*创建测试用例*/
String testCaseName= "居间人管理:添加居间人";
Integer testSuiteId = 6762;
Integer testProjectId = 214;
//Integer testSuiteId1 = 6762; //获取测试用例集id
System.out.println(api.getTestCase(6763, null, null).getTestSuiteId());
//获取getAuthorLogin
System.out.println("getAuthorLogin="+api.getTestCase(6763, null, null).getAuthorLogin());
//api.getTestSuiteByID(6762)
//获取getSummary
System.out.println(api.getTestCase(6763, null, null).getTestProjectId());
api.getTestCase(6763, null, null);
System.out.println("id="+api.getTestProjectByName("交易系统").getId()); // System.out.println(api.getTestCase(6763, null, null).getSummary());
// api.createTestCase(testCaseName, testSuiteId, 170, "qusername", "点击一级菜单【居间人管理】选择二级菜单【居间人管理】功能,进入居间人管理界面", null, null, null, null, null, null, null, null);

相关的用例id和buildname可以从导出的测试计划xml文件中得到。如下图

附录:

testlink常用的方法:http://testlinkjavaapi.sourceforge.net/implemented_methods.html

testlink接口:http://testlinkjavaapi.sourceforge.net/structure.html

java如何连接testlink的更多相关文章

  1. Java Mysql连接池配置和案例分析--超时异常和处理

    前言: 最近在开发服务的时候, 发现服务只要一段时间不用, 下次首次访问总是失败. 该问题影响虽不大, 但终究影响用户体验. 观察日志后发现, mysql连接因长时间空闲而被关闭, 使用时没有死链检测 ...

  2. java jdbc 连接mysql数据库 实现增删改查

    好久没有写博文了,写个简单的东西热热身,分享给大家. jdbc相信大家都不陌生,只要是个搞java的,最初接触j2ee的时候都是要学习这么个东西的,谁叫程序得和数据库打交道呢!而jdbc就是和数据库打 ...

  3. JAVA JDBC连接 SQLServer2012 连接失败 端口号错误

    SQLServer2012的SQL Sever 网络配置 我有4个 SQLEXPRESS的协议 SQLSERVER2008的协议 MSSQLSERVER的协议 SQLSERVER2012的协议 他们都 ...

  4. JAVA长连接demo

    http://blog.csdn.net/caomiao2006/article/details/38830475 JAVA长连接demo 2014-08-25 23:20 4767人阅读 评论(2) ...

  5. Java JDBC连接SQL Server2005错误:通过端口 1433 连接到主机 localhost 的 TCP/IP 连接失败 及sql2008外围服务器

    转载:Java JDBC连接SQL Server2005错误:通过端口 1433 连接到主机 localhost 的 TCP/IP 连接失败 错误原因如下: Exception in thread & ...

  6. Java网络连接之HttpURLConnection、HttpsURLConnection

    工具类包含两个方法: http请求.https请求 直接看代码: package com.jtools; import java.io.BufferedReader; import java.io.I ...

  7. mongodb3.0分片及java代码连接操作测试(开启用户验证)

    最近抽时间搭建了一下mongodb简单的分片,整个过程还算是蛮顺利,只不过在用户验证这一块遇到了一些问题,好在最后终于搞定. 一.服务器搭建过程: 1.安装四个mongodb:一个作为config.一 ...

  8. java自定义连接池

    1.java自定义连接池 1.1连接池的概念: 实际开发中"获取连接"或“释放资源”是非常消耗系统资源的两个过程,为了姐姐此类性能问题,通常情况我们采用连接池技术来贡献连接Conn ...

  9. java项目连接jdbc报错:com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server

    java项目连接jdbc报错:com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not creat ...

随机推荐

  1. X3DOM新增剪裁平面节点ClipPlane支持

    裁剪平面由方程Ax+By+Cz+D=0确定.所有满足[A B C D]M-1[Xe Ye Ze We]T>0的人眼坐标[Xe Ye Ze We]的点都位于该平面定义的半空间中,而该半空间以外的所 ...

  2. POJ 3761 Bubble Sort 快速幂取模+组合数学

    转载于:http://www.cnblogs.com/767355675hutaishi/p/3873770.html 题目大意:众所周知冒泡排序算法多数情况下不能只扫描一遍就结束排序,而是要扫描好几 ...

  3. mysql备份方法

    在用PHP或者其他web脚本语言构架的应用系统中,数据库大部分是mysql其中就牵扯到了一个数据库日常备份导出等问题,大概有以下几种情况: 1.如果应用用的是开源的产品,如dz.pw和其他cms等一般 ...

  4. Access restriction : The constructor BASE64Decoder() is not accessible due to restriction on required library

    1.问题描述 找不到包  sun.misc.BASE64Encoder 2. 解决方案 只需要在project build path中先移除JRE System Library,再添加库JRE Sys ...

  5. Mysql的简单使用(三)

    接上文Mysql的简单使用(二) mysql中结构相同的两个表进行合并:(注意需要两个表的结构是一样的) 有如下结构的两个表father和person. 合并的步骤为: 1.把person表和fath ...

  6. [js开源组件开发]js多选日期控件

    js多选日期控件 详情请见:http://www.lovewebgames.com/jsmodule/calendar.html 它的github地址:https://github.com/tianx ...

  7. Hexo建博小结

    本来只写在自己的github pages中的,想一想万一有人看呢,虽然同类的文章有不少了,但有些新坑他们没填啊,姑且放出来啦... 拥有自己的博客是一个很酷的事情,但自己建站总是太麻烦了,步骤繁多,管 ...

  8. Android 五大布局

    Android 五大布局:  FrameLayout(框架布局),LinearLayout (线性布局),AbsoluteLayout(绝对布局),RelativeLayout(相对布局),Table ...

  9. thinkPHP学习笔记(1)

    现在对前端的要求越来越高了  基本上身为一个前端人员需要会一种后台语言,于是选择了当下流行的php.因为是自学对我这个不怎么懂代码的人来说还是有点难度的. 1.先看看thinkphp的目录结构 ├─T ...

  10. UINavigationBar 和 UINavigationItem的属性设置

    #import "RootViewController.h" @interface RootViewController () @end @implementation RootV ...