changes.
| h1. Situation |
| Set up the configuration so that it can ask user for below settings when manually triggered: |
| # User can select either _Smoke Test Mode_ or _Acceptance Test Mode_. |
| # When _Smoke Test Mode_ is selected, user can select _Component A_ and/or _Component B_ to test, and can select whether or not to run integration tests. |
| # When _Acceptance Test Mode_ is selected, user can continue to select _Component C_ and/or _Component D_ to test. |
| # User can optionally select which test suite to run. |
| # User can optionally select which test case to run in the selected test suite. |
| |
| h1. Demonstration |
| # Open [this configuration|http://demo.pmease.com/overview/92] and hit the run button. |
| # A build option screen will be presented with desired settings. Make some selection and hit the OK button. Please note that when a test suite is selected, all test cases belonging to that test suite will be displayed for choice. |
| | # Wait for some time for the build to finish. Check the [step status|http://demo.pmease.com/build/92.latest] screen, and you will find that the test step has been executed on the nodes you specified in the build option screen. |
| | # Wait for some time for the build to finish. Check the [step status|http://demo.pmease.com/build/92.latest/step_status] screen, and you will find that the test step has been executed on the nodes you specified in the build option screen. |
| # Open [build log|http://demo.pmease.com/build/92.latest/log] and check output of the test step. For demonstration purpose, the specified test setting and its options are printed in the log correctly. |
| |
| h1. Resolution |
| # [Create a custom plugin|plugin tutorials] implementing the PromptBeanProvider extension point to provider your own build option bean. You may start with the sample plugin _com.example.promptbean_ in directory _<QuickBuild server install dir>/dev/plugin/samples_, and modify various bean classes as necessary. Refer to [bean editor] on how to annotate your beans for editing purpose. This tutorial uses the sample plugin directly. |
| # Stop QuickBuild, deploy your plugin to QuickBuild, and then start QuickBuild. Refer to [plugin tutorials] on how to do this. |
| # Define a variable with prompt setting set to _prompt for bean input_, and choose the bean you provided in your plugin. In this tutorial, we choosed the _Example Prompt Bean_ as demonstrated [here|http://demo.pmease.com/settings/92/variables]. |
| # Please note that we also specified default value of the bean by creating the bean object with groovy, assigning default values to its fields, and convert it to a string. This default bean will be used to populate the variable when the build is not manually triggered (ie. triggered via schedule). |
| # Definition of the [test step|http://demo.pmease.com/settings/92/steps] retrieves the bean via the variable and traverses the object graph to print interesting information. |