Description
As a MARGO Contributor, I should be able to use this tool as a "Writer" or "Generator" with the following workflow -
- Download the executable binary of the tool from Margo Github
- Run the tool, it prompts the user with - "Which Margo Persona do you want to create test-cases for ?"
- If the user selects - "Fleet Manager Supplier Persona", then follow the following path -
3.1 Ask the user what type of test-cases they want to add - "OpenAPI spec. based contract tests" or "Functional tests written in MARGO template"
3.2 If the user selects "OpenAPI spec. based contract tests" then follow the path -
3.2.1 Ask the user to provide the path of OpenAPI spec.
3.2.2 Validate and process the OpenAPI spec. and generate test-cases using Portman (or other tool).
3.2.3 Output the set of test-cases in relevant JSON files for the user to validate
3.3 If the user selects "Functional tests written in Postman, with MARGO template" then follow the path -
3.3.1 Ask the user to provide the path of the test-case JSON files
3.3.2 Validate the files against the MARGO provided Postman format (JSON Schema).
3.3.3 Validate if the correct Assertion and Validations are used
3.3.4 Output the set of test-cases in relevant JSON files for the user to validate
- If the user selects - "Device Supplier Persona", then follow the following path -
4.1 Ask the user to provide the path of the test-case JSON files
4.2 Validate the files against the MARGO provided format (JSON Schema).
4.4 Validate if the correct Assertion and Validations are used
4.5 Output the set of test-cases in relevant JSON files for the user to validate
- If the user selects - "Workload Supplier Persona", then follow the following path -
5.1 Ask the user to provide the path of the test-case JSON files
5.2 Validate the files against the MARGO provided format (JSON Schema).
- Once test-cases are verified to be correctly written / generated, list the available set of test-suites and ask the user to either select the test-suite or name a new test-suite
- Add the test-cases to the selected test-suite and ask the user to commit to the github repo (or maybe automate this)
- Ask if the user has more test-cases to add, if yes, take them back to step 3, else exit.
- Create JSON Schemas to validate the user provided test-cases as needed
- Create a restricted Postman JSON Schema, if this proves difficult then we will ask the user to manually write test-case in MARGO Schema instead of using Postman ( applies to 3.3 )
- The tools must be a runnable binary file available in amd64 and arm64
- Support as a windows executable is future evolution
- Support of a UI is future evolution
Raised by (email-id)
nilanjan.samajdar@capgemini.com
Type of Story
Implementation
Related product requirements
<!-To be added->
Definition of Done
- API updates need to be updated in swagger (or other) files
- Test automation should be done to demonstrate the use-case
- Code and documentation should be pulled into the release branch and the pull-request approved by the TWG
Estimated Story-points
50
Impacted artifacts
Description
As a MARGO Contributor, I should be able to use this tool as a "Writer" or "Generator" with the following workflow -
3.1 Ask the user what type of test-cases they want to add - "OpenAPI spec. based contract tests" or "Functional tests written in MARGO template"
3.2 If the user selects "OpenAPI spec. based contract tests" then follow the path -
3.2.1 Ask the user to provide the path of OpenAPI spec.
3.2.2 Validate and process the OpenAPI spec. and generate test-cases using Portman (or other tool).
3.2.3 Output the set of test-cases in relevant JSON files for the user to validate
3.3 If the user selects "Functional tests written in Postman, with MARGO template" then follow the path -
3.3.1 Ask the user to provide the path of the test-case JSON files
3.3.2 Validate the files against the MARGO provided Postman format (JSON Schema).
3.3.3 Validate if the correct Assertion and Validations are used
3.3.4 Output the set of test-cases in relevant JSON files for the user to validate
4.1 Ask the user to provide the path of the test-case JSON files
4.2 Validate the files against the MARGO provided format (JSON Schema).
4.4 Validate if the correct Assertion and Validations are used
4.5 Output the set of test-cases in relevant JSON files for the user to validate
5.1 Ask the user to provide the path of the test-case JSON files
5.2 Validate the files against the MARGO provided format (JSON Schema).
Raised by (email-id)
nilanjan.samajdar@capgemini.com
Type of Story
Implementation
Related product requirements
<!-To be added->
Definition of Done
Estimated Story-points
50
Impacted artifacts