Skip to content

[3.1.0] Plugin fails on failed test cases even configured with success #26

@bicschneider

Description

@bicschneider
Done Status As: Success
Write keyframes of passed flows: false
Schedule xclsc1702[7c6f8dd2-5b24-4e7b-836e-0b4ae73c3958] successfully detected!
//////////////////////////////////////////////////////////////////////////////////////
Schedule xclsc1702[7c6f8dd2-5b24-4e7b-836e-0b4ae73c3958] Launched Successfully!
The schedule status is already 'Executing' - wait a minute...
----------------------------------------------------------------------------------------
........
Schedule: xclsc1702[7c6f8dd2-5b24-4e7b-836e-0b4ae73c3958]
Passed testcases: 0
Failed testcases: 1
Error testcases: 0
|---------------------------------------------------------------
| Total passed testcases: 0
| Total failed testcases: 1
| Total error testcases: 0
Creating report file by path: reports.xml
FAILURE
Leapwork for Jenkins  plugin  successfully finished!

This is really "crucial" for our pipeline that "flow" failures are treated as non-intrusive to the build execution

           pluginHandler.createJUnitReport(run,workspace,getLeapworkReport(),listener,buildResult);

            if (buildResult.getErrors() > 0 ) {
                listener.getLogger().println("[ERROR] There were detected case(s) with status 'Error', 'Inconclusive', 'Timeout' or 'Cancelled'. Please check the report or console output for details. Set the build status to FAILURE as the results of the cases are not deterministic..");
                run.setResult(Result.FAILURE);
                listener.getLogger().println("");
            }
            if ( buildResult.getFailedTests() > 0 ) {
                if ( "Success".equals(this.leapworkDoneStatusAs) ){
                    listener.getLogger().println("There were test cases that had failures/issues, but the plugin has been configured to return: 'Success' in this case");
                    run.setResult(Result.SUCCESS);
                } else if ( "Unstable".equals(this.leapworkDoneStatusAs) ) {
                    listener.getLogger().println("There were test cases that had failures/issues, but the plugin has been configured to return: 'Unstable' in this case");
                    run.setResult(Result.UNSTABLE);
                }
            } else {
                listener.getLogger().println("No issues detected");
            }
            listener.getLogger().println(Messages.PLUGIN_SUCCESSFUL_FINISH);

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions