Ricardo Mendes
Ricardo Mendes

Reputation: 71

How to control manual tasks in Jenkins

I would like to use Jenkins to control my release process. The process contains jobs that execute scripts to build the solution and run automated tests, but there are other steps, like manual tests and documentation, that are executed by human beings. I would like the tester to be able to start the job, execute the tests, and then finish the job either with error (if there are critical bugs) or with success (if the quality is acceptable). This would also give me the duration of the manual tests.

AFAIK, manual tests are set up as jobs that do nothing and run immediately, thus providing no information that the step is being executed and how much it lasts.

Could you please tell me if it is possible to do this with Jenkins and how can I achieve that?

Thanks

Upvotes: 0

Views: 269

Answers (1)

Jon S
Jon S

Reputation: 16346

You should into Jenkins pipelines and especially the input stage. Here's a short example how it could look:

stage ("Build and other") {
  // Build and automatic testing ...
}

// Ask the tester to start manual testing (for duration)
input 'Start testing'

// Start a new stage so that we can see on the build page what's happening and duration
stage ("Manual testing") {

  // Ask operator to verify that all tests has passed
  input message: 'Start testing and press proceed on success, otherwise abort'

  // If the tester presses abort, the build we aborted and we won't get here
}

When you build and view console you will get: enter image description here

And on the build front page: enter image description here Note the "Paused for 2s" which denotes the time testing took (I'm a quick tester ;) )

Upvotes: 1

Related Questions