From 6c780e752f3241a5158d6f4fe5489993e1dfc600 Mon Sep 17 00:00:00 2001 From: Anna Kozlova Date: Tue, 14 Apr 2015 17:39:01 +0200 Subject: [PATCH] testng sm runner: include param names in tree view presentation --- .../src/org/testng/IDEARemoteTestNG.java | 4 ---- .../org/testng/IDEATestNGRemoteListener.java | 19 ++++++++++++++----- 2 files changed, 14 insertions(+), 9 deletions(-) diff --git a/plugins/testng_rt/src/org/testng/IDEARemoteTestNG.java b/plugins/testng_rt/src/org/testng/IDEARemoteTestNG.java index baa732ad087b..f0f8fd96c975 100644 --- a/plugins/testng_rt/src/org/testng/IDEARemoteTestNG.java +++ b/plugins/testng_rt/src/org/testng/IDEARemoteTestNG.java @@ -19,7 +19,6 @@ package org.testng; import jetbrains.buildServer.messages.serviceMessages.ServiceMessage; import org.testng.collections.Lists; import org.testng.xml.XmlClass; -import org.testng.xml.XmlInclude; import org.testng.xml.XmlSuite; import org.testng.xml.XmlTest; @@ -51,9 +50,6 @@ public class IDEARemoteTestNG extends TestNG { for (XmlTest test : tests) { for (XmlClass aClass : test.getXmlClasses()) { System.out.println("##teamcity[suiteTreeStarted name=\'" + aClass.getName() + "\' locationHint=\'java:suite://" + aClass.getName() + "\']"); - for (XmlInclude include : aClass.getIncludedMethods()) { - System.out.println("##teamcity[suiteTreeNode name=\'" + include.getName() + "\']"); - } System.out.println("##teamcity[suiteTreeEnded name=\'" + aClass.getName() + "\']"); } testCount += test.getClasses().size(); diff --git a/plugins/testng_rt/src/org/testng/IDEATestNGRemoteListener.java b/plugins/testng_rt/src/org/testng/IDEATestNGRemoteListener.java index 75bd8a157d88..f8413d1c7943 100644 --- a/plugins/testng_rt/src/org/testng/IDEATestNGRemoteListener.java +++ b/plugins/testng_rt/src/org/testng/IDEATestNGRemoteListener.java @@ -47,13 +47,22 @@ public class IDEATestNGRemoteListener implements ISuiteListener, IResultListener System.out.println("##teamcity[testSuiteStarted name =\'" + className + "\']"); myCurrentClassName = className; } - final String methodName = result.getMethod().getMethodName(); + String methodName = getMethodName(result); System.out.println("##teamcity[testStarted name=\'" + methodName + "\' locationHint=\'java:test://" + className + "." + methodName + "\']"); } + private static String getMethodName(ITestResult result) { + String methodName = result.getMethod().getMethodName(); + final Object[] parameters = result.getParameters(); + if (parameters.length > 0) { + methodName += "[" + parameters[0].toString() + "]"; + } + return methodName; + } + public void onTestSuccess(ITestResult result) { - System.out.println("##teamcity[testFinished name=\'" + result.getMethod().getMethodName() + "\']"); + System.out.println("##teamcity[testFinished name=\'" + getMethodName(result) + "\']"); } public String getTrace(Throwable tr) { @@ -68,17 +77,17 @@ public class IDEATestNGRemoteListener implements ISuiteListener, IResultListener final Throwable ex = result.getThrowable(); final String trace = getTrace(ex); final Map attrs = new HashMap(); - attrs.put("name", result.getMethod().getMethodName()); + attrs.put("name", getMethodName(result)); final String failureMessage = ex.getMessage(); attrs.put("message", failureMessage != null ? failureMessage : ""); attrs.put("details", trace); attrs.put("error", "true"); System.out.println(ServiceMessage.asString(ServiceMessageTypes.TEST_FAILED, attrs)); - System.out.println("##teamcity[testFinished name=\'" + result.getMethod().getMethodName() + "\']"); + System.out.println("##teamcity[testFinished name=\'" + getMethodName(result) + "\']"); } public void onTestSkipped(ITestResult result) { - System.out.println("##teamcity[testFinished name=\'" + result.getMethod().getMethodName() + "\']"); + System.out.println("##teamcity[testFinished name=\'" + getMethodName(result) + "\']"); } public void onTestFailedButWithinSuccessPercentage(ITestResult result) {