How to run testrigor tests on different environments like QA, Preprod? I need to data driven the environment specific urls
There are different ways to achieve that in testRigor.
Using different test suites, one per environment. One of the suites can contain the test cases and the others can be children of it inheriting the test cases.
On the same suite by using "branch testing". When you call testRigor via API you can trigger branch testing specifying with URL will be the target of the test. Detail of this can be found on CI/CD integration menu option within a test suite.
Related
Is there any guidelines or recommended practices of test plans and multiple environments (test, pre, prod)? So I make a test plan for a given solution. And then I run it for dev,then for pre and then for prod. It sounds like a little overhead to have 3 totally same test plans, how do you guys run this? Is there anyway I can run a test plan, and provide a parameter that now its for a specific environment?
I will try to explain the setup the procedure and hopefully someone can tell me what is the best approach to achieve my question at the end.
Setup:
We have the following environments for our application: QA UAT and Prod.
QA is our internal test environment whereas UAT and Prod are on customer side.
Procedure:
We prepare test cases in DevOps, and then run tests in the QA environment.
If all is ok and we are ready for UAT, application is deployed to UAT in order to have a test session (UAT session) with the customer, The test session will run test cases which are a subset of the original test cases which were used during the QA phase
Similar is repeated for Prod. except that usually the customer is not involved.
Question:
What is the best practice to have these different test cases sets (QA, UAT and Prod), in order to keep a record of the test runs on each of the environments.
I can think of:
Creating 3 test plans which reference the main set?
or creating 3 test suites?
or creating 3 configurations?
Your help is appreciated.
P.S. Mostly we do manual testing
different sets of test cases for different environments in Azure DevOps
We recommend you create 3 test plan for different environments, for each environments, you can create a test plan and import the existing test cases into that plan. You can also, if you wish, divide the test cases into separate test suites within the plan to enable easier management and monitoring of these separate sets of test cases.
Note: If you copy or clone the test cases. A copy creates a new baseline. Changes to these new test cases don't affect your previous test plans.
Currently we are able to associate only one mstest to a testcase in azure devops. I want to associate more than one test to a testcase. Any ideas please.
How to associate more tests to a testcase in azure devops
For this issue, I think it is not available to associate more than one test to a test case. A test can only be associated with one test case. For example: suppose we associate multiple tests into a test case. When running this test case, some of the tests successes and some of the tests failures, we can't determine whether the test case is successful or not, so this is unreasonable.
If you want to run multiple tests,you need to create multiple test cases.You can also try to create a test Plan or test suite, then add multiple test cases to the test suite or test plan, then run the test suite or test plan.
Please refer to Create test plans and test suites.
This question concerns use of the Jenkins Workflow plugin and "synchronizing" a stage amongst independent jobs.
We have a generic workflow for multiple projects with steps:
build project
push project to test environment
run (long) end-to-end test suite
push project to production
Step 3 runs a long time. If multiple projects are built and pushed to the test environment within the same window of time, we'd like to only run once the end-to-end test suite.
Can we have the jobs some how synchronize on step 3?
The desired orchestration can be achieved by make Step 3 a build action. I.e.
build end-to-end-tests
Where end-to-end-tests is a job dedicated to running the slow end-to-end tests.
Adding a Quiet period to end-to-end-tests supports the goal of "collecting" projects updated within a time period to end-to-end test. That is, if project A and B are pushed to the test environment with Quiet period seconds, then end-to-end-tests runs only once.
JENKINS-30269 might be helpful, but your use case is indeed subtly different from the usual one that RFE would solve; you really seem to need a cross-job stage, which is not currently possible though in principle such a step could be written. In the meantime, a downstream deployment job is probably the most reasonable workaround.
I have downloaded the TCB plugin for Jenkins. I have several builds that run tests. These builds must be run individually, as they access similar files that can cause tests to fail if more than one test build is running. I have been trying to find the place where I put the builds into a "category", so I can throttle the whole test category down to 1/1. I thought that it might be the Jenkins Views, but that did not do the job. How do you add jobs to a category?
This tag discusses the solution I desire: Jenkins: group jobs and limit build processors for this group. The only problem is that it doesn't say how to add them to categories.
You set up categories in the global Jenkins configuration (Manage Jenkins -> Configure System) and then assign jobs to categories. See the "Per Project-Category" section in the plugin documentation.