public static boolean postResult2Qc(String testsetName,
                                       String testName,
                                       String testInstanceName,
                                       QcTestStatus testStatus,
                                       List<String> logFileNames)
                                       throws Exception
   {
      boolean posted = false;
      boolean uploaded = true;
      try {
         TestInstanceInfo testInstance = connector.findTestInstance(
                  QcConstants.QC_TESTSETFOLDER_PATH, testsetName, testName, testInstanceName);
         if (testInstance != null) {
            TestRunInfo testRun = connector.postResult2Qc(testInstance.getId(),
                     testStatus);
            if (testRun != null) {
               posted = true;
               if (logFileNames != null && !logFileNames.isEmpty()) {
                  for (String logFileName : logFileNames) {
                     if (connector.uploadLogFile2Qc(testRun.getId(),
                              logFileName) != null) {
                        log.info(logFileName + " file is uploaded successfully");
                     } else {
                        log.error("Upload failed :" + logFileName);
                        uploaded = false;
                     }
                  }
               }
            }
         } else {
            log.error("Failed to get test instance in QC");
         }
      } catch (Exception ex) {
         ex.printStackTrace();
      }
      return posted && uploaded;
   }