Do you still need a Test Plan when adopting Continuous Delivery?Test case/plan for error message scenariosSelenium IDE and Selenese scripts in Continuous IntegrationTerm to describe deployment testHandling of Test Documents throughout RetestsShould QA create a test plan for verifying bug fixes?CI for Selenium ProjectFunctional/Black Box tests automation library on PythonIs manual regression testing an technical debt for agile teams aiming for continuous delivery?
Installing a sliding patio door...why does the entire frame have to be square, level and plumb?
What does it mean by commercial support available in Open source platform?
Washing the skin of a dead rat
Mechanics to keep mobs and environment alive without using tons of memory?
How do I recall Gooigi in co-op mode?
On how/if I should ask my supervisor about lead authorship?
What is the difference between the Ancient Greek religion and the Ancient Roman religion?
Use 404 or 200 when null result (REST)
What potential problems are there with dumping dex in bard build?
How is this character useful as an ally in Curse of Strahd?
Missing Extract Type on Data Extract Activity. Why my account is missing this feature?
QGIS incredibly slow when trying to update large tables?
Help with formulating an implication
Why is Carbon Dioxide a Greenhouse Gas whereas Ammonia is not?
How does an ideal op amp amplify a voltage input when the voltage difference is 0?
How to persuade players not to cheat?
When is the best time to visit the Australian outback?
Why is Google's quantum supremacy experiment impressive?
Replacing 2-prong outlets in basement - existing wiring has two hot wires, one neutral?
Did Catherine the Great really call for the abolition of serfdom?
Feasibility of keeping an Electrical Bike in poor (wet) storage conditions
Fast symmetric key cryptography class
How to Keep Winged People Where They Belong?
The correct capital G and J in cursive
Do you still need a Test Plan when adopting Continuous Delivery?
Test case/plan for error message scenariosSelenium IDE and Selenese scripts in Continuous IntegrationTerm to describe deployment testHandling of Test Documents throughout RetestsShould QA create a test plan for verifying bug fixes?CI for Selenium ProjectFunctional/Black Box tests automation library on PythonIs manual regression testing an technical debt for agile teams aiming for continuous delivery?
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty
margin-bottom:0;
As a test manager I need to review a Test Plan for the upcoming release. I also need to review the test results. The tests are both automated and manual.
As an organisation we would like to move to continuous integration/continuous delivery, where code changes are fully tested automatically e.g. via Jenkins. In the future we may move to CD to automatically ship those changes
Do you still need a Test Plan when using CI/CD? How do you ensure that the product has been tested properly, including functional and non-functional testing? What oversight can QA provide when using CI/CD?
continuous-integration test-planning
add a comment
|
As a test manager I need to review a Test Plan for the upcoming release. I also need to review the test results. The tests are both automated and manual.
As an organisation we would like to move to continuous integration/continuous delivery, where code changes are fully tested automatically e.g. via Jenkins. In the future we may move to CD to automatically ship those changes
Do you still need a Test Plan when using CI/CD? How do you ensure that the product has been tested properly, including functional and non-functional testing? What oversight can QA provide when using CI/CD?
continuous-integration test-planning
1
As the answers say, yes. However make sure that the focus stays on the value the tests add and is constantly reviewed. Test plans, although needed, can be the start of creating massive test suites (whether manual or automated) and it takes maturity to contually refactor and remove tests to keep the suite fast and lean. Just adding more tests every time there is new or changed functionality is a route to slowness. Consider KPIs that cap test running time to force choices. This will force more unit tests 'cos they are so fast.
– Michael Durrant
Oct 14 at 14:59
Details of approaching/utilising CI/CD for testing also should be a part of high level test plan.
– Vishal Aggarwal
Oct 15 at 11:15
add a comment
|
As a test manager I need to review a Test Plan for the upcoming release. I also need to review the test results. The tests are both automated and manual.
As an organisation we would like to move to continuous integration/continuous delivery, where code changes are fully tested automatically e.g. via Jenkins. In the future we may move to CD to automatically ship those changes
Do you still need a Test Plan when using CI/CD? How do you ensure that the product has been tested properly, including functional and non-functional testing? What oversight can QA provide when using CI/CD?
continuous-integration test-planning
As a test manager I need to review a Test Plan for the upcoming release. I also need to review the test results. The tests are both automated and manual.
As an organisation we would like to move to continuous integration/continuous delivery, where code changes are fully tested automatically e.g. via Jenkins. In the future we may move to CD to automatically ship those changes
Do you still need a Test Plan when using CI/CD? How do you ensure that the product has been tested properly, including functional and non-functional testing? What oversight can QA provide when using CI/CD?
continuous-integration test-planning
continuous-integration test-planning
asked Oct 14 at 11:12
TarskiTarski
1465 bronze badges
1465 bronze badges
1
As the answers say, yes. However make sure that the focus stays on the value the tests add and is constantly reviewed. Test plans, although needed, can be the start of creating massive test suites (whether manual or automated) and it takes maturity to contually refactor and remove tests to keep the suite fast and lean. Just adding more tests every time there is new or changed functionality is a route to slowness. Consider KPIs that cap test running time to force choices. This will force more unit tests 'cos they are so fast.
– Michael Durrant
Oct 14 at 14:59
Details of approaching/utilising CI/CD for testing also should be a part of high level test plan.
– Vishal Aggarwal
Oct 15 at 11:15
add a comment
|
1
As the answers say, yes. However make sure that the focus stays on the value the tests add and is constantly reviewed. Test plans, although needed, can be the start of creating massive test suites (whether manual or automated) and it takes maturity to contually refactor and remove tests to keep the suite fast and lean. Just adding more tests every time there is new or changed functionality is a route to slowness. Consider KPIs that cap test running time to force choices. This will force more unit tests 'cos they are so fast.
– Michael Durrant
Oct 14 at 14:59
Details of approaching/utilising CI/CD for testing also should be a part of high level test plan.
– Vishal Aggarwal
Oct 15 at 11:15
1
1
As the answers say, yes. However make sure that the focus stays on the value the tests add and is constantly reviewed. Test plans, although needed, can be the start of creating massive test suites (whether manual or automated) and it takes maturity to contually refactor and remove tests to keep the suite fast and lean. Just adding more tests every time there is new or changed functionality is a route to slowness. Consider KPIs that cap test running time to force choices. This will force more unit tests 'cos they are so fast.
– Michael Durrant
Oct 14 at 14:59
As the answers say, yes. However make sure that the focus stays on the value the tests add and is constantly reviewed. Test plans, although needed, can be the start of creating massive test suites (whether manual or automated) and it takes maturity to contually refactor and remove tests to keep the suite fast and lean. Just adding more tests every time there is new or changed functionality is a route to slowness. Consider KPIs that cap test running time to force choices. This will force more unit tests 'cos they are so fast.
– Michael Durrant
Oct 14 at 14:59
Details of approaching/utilising CI/CD for testing also should be a part of high level test plan.
– Vishal Aggarwal
Oct 15 at 11:15
Details of approaching/utilising CI/CD for testing also should be a part of high level test plan.
– Vishal Aggarwal
Oct 15 at 11:15
add a comment
|
4 Answers
4
active
oldest
votes
I don't see CI/CD as something different then non CI/CD process, tests are simply being ran by a non human entity.
Do you need a test plan (or plan your tests) ? of course you do, you need to think what goes into automation and whether something should be done manually or tested in production (A/B tested, telemetry), analyze risks related to testing this way and not another, and evaluate the level of testing in each stage.
You can monitor the quality of the results the same way as before- use reports, dashboards and analyze logs, data and user bug reports
add a comment
|
Do you still need a Test Plan when using CI/CD?
YES you do. Because a test plan will tell you at least the thing that you did not specify in your question: how often do you plan to run the tests? Which tests will run with which periodicity?
Maybe there is a common practice to do it every night. Is it feasible for your project? Which alternatives do you have? Why is one method better / worse than the other?
Which tests will be executed "continuously"? Top level / features-related? Architectural? Unit tests?
Can you test everything automatically? Does your system depend on other systems? How are the changes of the other systems managed and tested?
Even if "continuous" sounds so great, it is not at all continuous. At best, it is periodic. That is why you actually need to plan ahead.
Another question: what will happen when some test-case(s) fail? How will you handle the logging, reporting, monitoring, fixing?
Continuous vs. Periodic
A river flowing is continuous. Even if there is ice on the top of it. Testing cannot be continuous.
The code must achieve some certain "maturity" before it can be tested. The minimum pre-requisite is that it is compilable.
The minimum pre-requisite for delivery is that certain test-cases must pass. If they fail, the product is not safe for use.
A test-suite takes time. You do not execute everything at any point in time. It starts, and then it finishes, and then a new SW version is taken from the repository, and testing starts again, and ends again...
So such a system can be called "continuous" only if a lot of the practical details of reality are ignored - as it is usually done for marketing and advertising purposes.
1
"it is not at all continuous. At best, it is periodic" Do you mean one cannot implement delivery of every codebase snapshot, but only on specific periods of time?
– João Farias
Oct 15 at 7:06
1
@JoãoFarias At one level, changes to the code-base happen in discrete stages, so – in a somewhat mathematical sense – it can only be step-wise and not continuous. More generally, it will take a certain amount of time to run through a suite of tests, so a new "tested release" cannot be continuously available, only periodically available (with a minimum period based on the length of time the tests take to complete).
– TripeHound
Oct 15 at 8:34
@JoãoFarias: I added to the answer to clarify the "continuous" vs. "periodic". Sorry I did not do it from the beginning - what is in my mind is always obvious to me :)
– virolino
Oct 15 at 8:39
1
@TripeHound: exactly my point - we added the explanation at the same time. +1
– virolino
Oct 15 at 8:39
1
Well, if we look at the atomic level, a river flows discretly. Everything will depend on the POV. In Continuous Delivery, a deployable unit is defined as a green commit. If you have a new deployment for each new green commit, immediately after its creation (coding+testing), then you are deploying continuously. If you accumulate green commits to be deployed together, you are not.
– João Farias
Oct 15 at 9:03
|
show 2 more comments
No, you need a Test Strategy. A plan suggests it has a end, while your product SDLC is infinite. The test strategy should be a guideline for teams what types of testing they should execute and what value it brings, not how and when.
Some types of testing might need extra attention, as they do not fit in an automated build pipeline, some examples:
- Penetration testing
- Risk Analyses (for example the GDRP Data Protection Impact Assesment)
- Quality community
- etc..
add a comment
|
As an alternative to "traditional" Test Plans (what we will do - checklist-based), you can focus on establishing a Test Strategy (how we want to do - guidelines-based).
A well-known model is the Heuristic Test Strategy Model:
The HTSM divides the testing creation thinking in different axes of analysis, which, when united, enables tester to create a holistic testing strategy. These axes are the following:
Project Environment includes resources, constraints, and other elements in the project that may enable or hobble our testing. Sometimes a tester must challenge constraints, and sometimes accept them.
Product Elements are things that you intend to test. Software is complex and invisible.Take care to cover all of it that matters, not just the parts that are easy to see.
Quality Criteria are the rules, values, and sources that allow you as a tester to determine if the product has problems. Quality criteria are multidimensional and often hidden or self-contradictory.
Test Techniques are heuristics for creating tests. All techniques involve some sort of analysis of the project environment, product elements, and quality criteria.
Perceived Quality is the result of testing. You can never know the “actual” quality of a software product, but through the application of a variety of tests, you can make an informed assessment of it.
As a servant leader, instead of periodically reviewing (work done) and constraining how the team will work, you can be an outside eye, focused on making question that will make the team reflect if their action are aligned with the HTSM.
This way the team itself will become a self-organizing entity, capable of understanding its context and performing the work that needs to be done (which frees you to do something else).
add a comment
|
Your Answer
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "244"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/4.0/"u003ecc by-sa 4.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsqa.stackexchange.com%2fquestions%2f41190%2fdo-you-still-need-a-test-plan-when-adopting-continuous-delivery%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
4 Answers
4
active
oldest
votes
4 Answers
4
active
oldest
votes
active
oldest
votes
active
oldest
votes
I don't see CI/CD as something different then non CI/CD process, tests are simply being ran by a non human entity.
Do you need a test plan (or plan your tests) ? of course you do, you need to think what goes into automation and whether something should be done manually or tested in production (A/B tested, telemetry), analyze risks related to testing this way and not another, and evaluate the level of testing in each stage.
You can monitor the quality of the results the same way as before- use reports, dashboards and analyze logs, data and user bug reports
add a comment
|
I don't see CI/CD as something different then non CI/CD process, tests are simply being ran by a non human entity.
Do you need a test plan (or plan your tests) ? of course you do, you need to think what goes into automation and whether something should be done manually or tested in production (A/B tested, telemetry), analyze risks related to testing this way and not another, and evaluate the level of testing in each stage.
You can monitor the quality of the results the same way as before- use reports, dashboards and analyze logs, data and user bug reports
add a comment
|
I don't see CI/CD as something different then non CI/CD process, tests are simply being ran by a non human entity.
Do you need a test plan (or plan your tests) ? of course you do, you need to think what goes into automation and whether something should be done manually or tested in production (A/B tested, telemetry), analyze risks related to testing this way and not another, and evaluate the level of testing in each stage.
You can monitor the quality of the results the same way as before- use reports, dashboards and analyze logs, data and user bug reports
I don't see CI/CD as something different then non CI/CD process, tests are simply being ran by a non human entity.
Do you need a test plan (or plan your tests) ? of course you do, you need to think what goes into automation and whether something should be done manually or tested in production (A/B tested, telemetry), analyze risks related to testing this way and not another, and evaluate the level of testing in each stage.
You can monitor the quality of the results the same way as before- use reports, dashboards and analyze logs, data and user bug reports
answered Oct 14 at 12:13
RsfRsf
4,9871 gold badge15 silver badges30 bronze badges
4,9871 gold badge15 silver badges30 bronze badges
add a comment
|
add a comment
|
Do you still need a Test Plan when using CI/CD?
YES you do. Because a test plan will tell you at least the thing that you did not specify in your question: how often do you plan to run the tests? Which tests will run with which periodicity?
Maybe there is a common practice to do it every night. Is it feasible for your project? Which alternatives do you have? Why is one method better / worse than the other?
Which tests will be executed "continuously"? Top level / features-related? Architectural? Unit tests?
Can you test everything automatically? Does your system depend on other systems? How are the changes of the other systems managed and tested?
Even if "continuous" sounds so great, it is not at all continuous. At best, it is periodic. That is why you actually need to plan ahead.
Another question: what will happen when some test-case(s) fail? How will you handle the logging, reporting, monitoring, fixing?
Continuous vs. Periodic
A river flowing is continuous. Even if there is ice on the top of it. Testing cannot be continuous.
The code must achieve some certain "maturity" before it can be tested. The minimum pre-requisite is that it is compilable.
The minimum pre-requisite for delivery is that certain test-cases must pass. If they fail, the product is not safe for use.
A test-suite takes time. You do not execute everything at any point in time. It starts, and then it finishes, and then a new SW version is taken from the repository, and testing starts again, and ends again...
So such a system can be called "continuous" only if a lot of the practical details of reality are ignored - as it is usually done for marketing and advertising purposes.
1
"it is not at all continuous. At best, it is periodic" Do you mean one cannot implement delivery of every codebase snapshot, but only on specific periods of time?
– João Farias
Oct 15 at 7:06
1
@JoãoFarias At one level, changes to the code-base happen in discrete stages, so – in a somewhat mathematical sense – it can only be step-wise and not continuous. More generally, it will take a certain amount of time to run through a suite of tests, so a new "tested release" cannot be continuously available, only periodically available (with a minimum period based on the length of time the tests take to complete).
– TripeHound
Oct 15 at 8:34
@JoãoFarias: I added to the answer to clarify the "continuous" vs. "periodic". Sorry I did not do it from the beginning - what is in my mind is always obvious to me :)
– virolino
Oct 15 at 8:39
1
@TripeHound: exactly my point - we added the explanation at the same time. +1
– virolino
Oct 15 at 8:39
1
Well, if we look at the atomic level, a river flows discretly. Everything will depend on the POV. In Continuous Delivery, a deployable unit is defined as a green commit. If you have a new deployment for each new green commit, immediately after its creation (coding+testing), then you are deploying continuously. If you accumulate green commits to be deployed together, you are not.
– João Farias
Oct 15 at 9:03
|
show 2 more comments
Do you still need a Test Plan when using CI/CD?
YES you do. Because a test plan will tell you at least the thing that you did not specify in your question: how often do you plan to run the tests? Which tests will run with which periodicity?
Maybe there is a common practice to do it every night. Is it feasible for your project? Which alternatives do you have? Why is one method better / worse than the other?
Which tests will be executed "continuously"? Top level / features-related? Architectural? Unit tests?
Can you test everything automatically? Does your system depend on other systems? How are the changes of the other systems managed and tested?
Even if "continuous" sounds so great, it is not at all continuous. At best, it is periodic. That is why you actually need to plan ahead.
Another question: what will happen when some test-case(s) fail? How will you handle the logging, reporting, monitoring, fixing?
Continuous vs. Periodic
A river flowing is continuous. Even if there is ice on the top of it. Testing cannot be continuous.
The code must achieve some certain "maturity" before it can be tested. The minimum pre-requisite is that it is compilable.
The minimum pre-requisite for delivery is that certain test-cases must pass. If they fail, the product is not safe for use.
A test-suite takes time. You do not execute everything at any point in time. It starts, and then it finishes, and then a new SW version is taken from the repository, and testing starts again, and ends again...
So such a system can be called "continuous" only if a lot of the practical details of reality are ignored - as it is usually done for marketing and advertising purposes.
1
"it is not at all continuous. At best, it is periodic" Do you mean one cannot implement delivery of every codebase snapshot, but only on specific periods of time?
– João Farias
Oct 15 at 7:06
1
@JoãoFarias At one level, changes to the code-base happen in discrete stages, so – in a somewhat mathematical sense – it can only be step-wise and not continuous. More generally, it will take a certain amount of time to run through a suite of tests, so a new "tested release" cannot be continuously available, only periodically available (with a minimum period based on the length of time the tests take to complete).
– TripeHound
Oct 15 at 8:34
@JoãoFarias: I added to the answer to clarify the "continuous" vs. "periodic". Sorry I did not do it from the beginning - what is in my mind is always obvious to me :)
– virolino
Oct 15 at 8:39
1
@TripeHound: exactly my point - we added the explanation at the same time. +1
– virolino
Oct 15 at 8:39
1
Well, if we look at the atomic level, a river flows discretly. Everything will depend on the POV. In Continuous Delivery, a deployable unit is defined as a green commit. If you have a new deployment for each new green commit, immediately after its creation (coding+testing), then you are deploying continuously. If you accumulate green commits to be deployed together, you are not.
– João Farias
Oct 15 at 9:03
|
show 2 more comments
Do you still need a Test Plan when using CI/CD?
YES you do. Because a test plan will tell you at least the thing that you did not specify in your question: how often do you plan to run the tests? Which tests will run with which periodicity?
Maybe there is a common practice to do it every night. Is it feasible for your project? Which alternatives do you have? Why is one method better / worse than the other?
Which tests will be executed "continuously"? Top level / features-related? Architectural? Unit tests?
Can you test everything automatically? Does your system depend on other systems? How are the changes of the other systems managed and tested?
Even if "continuous" sounds so great, it is not at all continuous. At best, it is periodic. That is why you actually need to plan ahead.
Another question: what will happen when some test-case(s) fail? How will you handle the logging, reporting, monitoring, fixing?
Continuous vs. Periodic
A river flowing is continuous. Even if there is ice on the top of it. Testing cannot be continuous.
The code must achieve some certain "maturity" before it can be tested. The minimum pre-requisite is that it is compilable.
The minimum pre-requisite for delivery is that certain test-cases must pass. If they fail, the product is not safe for use.
A test-suite takes time. You do not execute everything at any point in time. It starts, and then it finishes, and then a new SW version is taken from the repository, and testing starts again, and ends again...
So such a system can be called "continuous" only if a lot of the practical details of reality are ignored - as it is usually done for marketing and advertising purposes.
Do you still need a Test Plan when using CI/CD?
YES you do. Because a test plan will tell you at least the thing that you did not specify in your question: how often do you plan to run the tests? Which tests will run with which periodicity?
Maybe there is a common practice to do it every night. Is it feasible for your project? Which alternatives do you have? Why is one method better / worse than the other?
Which tests will be executed "continuously"? Top level / features-related? Architectural? Unit tests?
Can you test everything automatically? Does your system depend on other systems? How are the changes of the other systems managed and tested?
Even if "continuous" sounds so great, it is not at all continuous. At best, it is periodic. That is why you actually need to plan ahead.
Another question: what will happen when some test-case(s) fail? How will you handle the logging, reporting, monitoring, fixing?
Continuous vs. Periodic
A river flowing is continuous. Even if there is ice on the top of it. Testing cannot be continuous.
The code must achieve some certain "maturity" before it can be tested. The minimum pre-requisite is that it is compilable.
The minimum pre-requisite for delivery is that certain test-cases must pass. If they fail, the product is not safe for use.
A test-suite takes time. You do not execute everything at any point in time. It starts, and then it finishes, and then a new SW version is taken from the repository, and testing starts again, and ends again...
So such a system can be called "continuous" only if a lot of the practical details of reality are ignored - as it is usually done for marketing and advertising purposes.
edited Oct 15 at 8:37
answered Oct 14 at 12:47
virolinovirolino
2175 bronze badges
2175 bronze badges
1
"it is not at all continuous. At best, it is periodic" Do you mean one cannot implement delivery of every codebase snapshot, but only on specific periods of time?
– João Farias
Oct 15 at 7:06
1
@JoãoFarias At one level, changes to the code-base happen in discrete stages, so – in a somewhat mathematical sense – it can only be step-wise and not continuous. More generally, it will take a certain amount of time to run through a suite of tests, so a new "tested release" cannot be continuously available, only periodically available (with a minimum period based on the length of time the tests take to complete).
– TripeHound
Oct 15 at 8:34
@JoãoFarias: I added to the answer to clarify the "continuous" vs. "periodic". Sorry I did not do it from the beginning - what is in my mind is always obvious to me :)
– virolino
Oct 15 at 8:39
1
@TripeHound: exactly my point - we added the explanation at the same time. +1
– virolino
Oct 15 at 8:39
1
Well, if we look at the atomic level, a river flows discretly. Everything will depend on the POV. In Continuous Delivery, a deployable unit is defined as a green commit. If you have a new deployment for each new green commit, immediately after its creation (coding+testing), then you are deploying continuously. If you accumulate green commits to be deployed together, you are not.
– João Farias
Oct 15 at 9:03
|
show 2 more comments
1
"it is not at all continuous. At best, it is periodic" Do you mean one cannot implement delivery of every codebase snapshot, but only on specific periods of time?
– João Farias
Oct 15 at 7:06
1
@JoãoFarias At one level, changes to the code-base happen in discrete stages, so – in a somewhat mathematical sense – it can only be step-wise and not continuous. More generally, it will take a certain amount of time to run through a suite of tests, so a new "tested release" cannot be continuously available, only periodically available (with a minimum period based on the length of time the tests take to complete).
– TripeHound
Oct 15 at 8:34
@JoãoFarias: I added to the answer to clarify the "continuous" vs. "periodic". Sorry I did not do it from the beginning - what is in my mind is always obvious to me :)
– virolino
Oct 15 at 8:39
1
@TripeHound: exactly my point - we added the explanation at the same time. +1
– virolino
Oct 15 at 8:39
1
Well, if we look at the atomic level, a river flows discretly. Everything will depend on the POV. In Continuous Delivery, a deployable unit is defined as a green commit. If you have a new deployment for each new green commit, immediately after its creation (coding+testing), then you are deploying continuously. If you accumulate green commits to be deployed together, you are not.
– João Farias
Oct 15 at 9:03
1
1
"it is not at all continuous. At best, it is periodic" Do you mean one cannot implement delivery of every codebase snapshot, but only on specific periods of time?
– João Farias
Oct 15 at 7:06
"it is not at all continuous. At best, it is periodic" Do you mean one cannot implement delivery of every codebase snapshot, but only on specific periods of time?
– João Farias
Oct 15 at 7:06
1
1
@JoãoFarias At one level, changes to the code-base happen in discrete stages, so – in a somewhat mathematical sense – it can only be step-wise and not continuous. More generally, it will take a certain amount of time to run through a suite of tests, so a new "tested release" cannot be continuously available, only periodically available (with a minimum period based on the length of time the tests take to complete).
– TripeHound
Oct 15 at 8:34
@JoãoFarias At one level, changes to the code-base happen in discrete stages, so – in a somewhat mathematical sense – it can only be step-wise and not continuous. More generally, it will take a certain amount of time to run through a suite of tests, so a new "tested release" cannot be continuously available, only periodically available (with a minimum period based on the length of time the tests take to complete).
– TripeHound
Oct 15 at 8:34
@JoãoFarias: I added to the answer to clarify the "continuous" vs. "periodic". Sorry I did not do it from the beginning - what is in my mind is always obvious to me :)
– virolino
Oct 15 at 8:39
@JoãoFarias: I added to the answer to clarify the "continuous" vs. "periodic". Sorry I did not do it from the beginning - what is in my mind is always obvious to me :)
– virolino
Oct 15 at 8:39
1
1
@TripeHound: exactly my point - we added the explanation at the same time. +1
– virolino
Oct 15 at 8:39
@TripeHound: exactly my point - we added the explanation at the same time. +1
– virolino
Oct 15 at 8:39
1
1
Well, if we look at the atomic level, a river flows discretly. Everything will depend on the POV. In Continuous Delivery, a deployable unit is defined as a green commit. If you have a new deployment for each new green commit, immediately after its creation (coding+testing), then you are deploying continuously. If you accumulate green commits to be deployed together, you are not.
– João Farias
Oct 15 at 9:03
Well, if we look at the atomic level, a river flows discretly. Everything will depend on the POV. In Continuous Delivery, a deployable unit is defined as a green commit. If you have a new deployment for each new green commit, immediately after its creation (coding+testing), then you are deploying continuously. If you accumulate green commits to be deployed together, you are not.
– João Farias
Oct 15 at 9:03
|
show 2 more comments
No, you need a Test Strategy. A plan suggests it has a end, while your product SDLC is infinite. The test strategy should be a guideline for teams what types of testing they should execute and what value it brings, not how and when.
Some types of testing might need extra attention, as they do not fit in an automated build pipeline, some examples:
- Penetration testing
- Risk Analyses (for example the GDRP Data Protection Impact Assesment)
- Quality community
- etc..
add a comment
|
No, you need a Test Strategy. A plan suggests it has a end, while your product SDLC is infinite. The test strategy should be a guideline for teams what types of testing they should execute and what value it brings, not how and when.
Some types of testing might need extra attention, as they do not fit in an automated build pipeline, some examples:
- Penetration testing
- Risk Analyses (for example the GDRP Data Protection Impact Assesment)
- Quality community
- etc..
add a comment
|
No, you need a Test Strategy. A plan suggests it has a end, while your product SDLC is infinite. The test strategy should be a guideline for teams what types of testing they should execute and what value it brings, not how and when.
Some types of testing might need extra attention, as they do not fit in an automated build pipeline, some examples:
- Penetration testing
- Risk Analyses (for example the GDRP Data Protection Impact Assesment)
- Quality community
- etc..
No, you need a Test Strategy. A plan suggests it has a end, while your product SDLC is infinite. The test strategy should be a guideline for teams what types of testing they should execute and what value it brings, not how and when.
Some types of testing might need extra attention, as they do not fit in an automated build pipeline, some examples:
- Penetration testing
- Risk Analyses (for example the GDRP Data Protection Impact Assesment)
- Quality community
- etc..
edited Oct 15 at 14:55
answered Oct 15 at 8:28
Niels van ReijmersdalNiels van Reijmersdal
24.8k2 gold badges39 silver badges92 bronze badges
24.8k2 gold badges39 silver badges92 bronze badges
add a comment
|
add a comment
|
As an alternative to "traditional" Test Plans (what we will do - checklist-based), you can focus on establishing a Test Strategy (how we want to do - guidelines-based).
A well-known model is the Heuristic Test Strategy Model:
The HTSM divides the testing creation thinking in different axes of analysis, which, when united, enables tester to create a holistic testing strategy. These axes are the following:
Project Environment includes resources, constraints, and other elements in the project that may enable or hobble our testing. Sometimes a tester must challenge constraints, and sometimes accept them.
Product Elements are things that you intend to test. Software is complex and invisible.Take care to cover all of it that matters, not just the parts that are easy to see.
Quality Criteria are the rules, values, and sources that allow you as a tester to determine if the product has problems. Quality criteria are multidimensional and often hidden or self-contradictory.
Test Techniques are heuristics for creating tests. All techniques involve some sort of analysis of the project environment, product elements, and quality criteria.
Perceived Quality is the result of testing. You can never know the “actual” quality of a software product, but through the application of a variety of tests, you can make an informed assessment of it.
As a servant leader, instead of periodically reviewing (work done) and constraining how the team will work, you can be an outside eye, focused on making question that will make the team reflect if their action are aligned with the HTSM.
This way the team itself will become a self-organizing entity, capable of understanding its context and performing the work that needs to be done (which frees you to do something else).
add a comment
|
As an alternative to "traditional" Test Plans (what we will do - checklist-based), you can focus on establishing a Test Strategy (how we want to do - guidelines-based).
A well-known model is the Heuristic Test Strategy Model:
The HTSM divides the testing creation thinking in different axes of analysis, which, when united, enables tester to create a holistic testing strategy. These axes are the following:
Project Environment includes resources, constraints, and other elements in the project that may enable or hobble our testing. Sometimes a tester must challenge constraints, and sometimes accept them.
Product Elements are things that you intend to test. Software is complex and invisible.Take care to cover all of it that matters, not just the parts that are easy to see.
Quality Criteria are the rules, values, and sources that allow you as a tester to determine if the product has problems. Quality criteria are multidimensional and often hidden or self-contradictory.
Test Techniques are heuristics for creating tests. All techniques involve some sort of analysis of the project environment, product elements, and quality criteria.
Perceived Quality is the result of testing. You can never know the “actual” quality of a software product, but through the application of a variety of tests, you can make an informed assessment of it.
As a servant leader, instead of periodically reviewing (work done) and constraining how the team will work, you can be an outside eye, focused on making question that will make the team reflect if their action are aligned with the HTSM.
This way the team itself will become a self-organizing entity, capable of understanding its context and performing the work that needs to be done (which frees you to do something else).
add a comment
|
As an alternative to "traditional" Test Plans (what we will do - checklist-based), you can focus on establishing a Test Strategy (how we want to do - guidelines-based).
A well-known model is the Heuristic Test Strategy Model:
The HTSM divides the testing creation thinking in different axes of analysis, which, when united, enables tester to create a holistic testing strategy. These axes are the following:
Project Environment includes resources, constraints, and other elements in the project that may enable or hobble our testing. Sometimes a tester must challenge constraints, and sometimes accept them.
Product Elements are things that you intend to test. Software is complex and invisible.Take care to cover all of it that matters, not just the parts that are easy to see.
Quality Criteria are the rules, values, and sources that allow you as a tester to determine if the product has problems. Quality criteria are multidimensional and often hidden or self-contradictory.
Test Techniques are heuristics for creating tests. All techniques involve some sort of analysis of the project environment, product elements, and quality criteria.
Perceived Quality is the result of testing. You can never know the “actual” quality of a software product, but through the application of a variety of tests, you can make an informed assessment of it.
As a servant leader, instead of periodically reviewing (work done) and constraining how the team will work, you can be an outside eye, focused on making question that will make the team reflect if their action are aligned with the HTSM.
This way the team itself will become a self-organizing entity, capable of understanding its context and performing the work that needs to be done (which frees you to do something else).
As an alternative to "traditional" Test Plans (what we will do - checklist-based), you can focus on establishing a Test Strategy (how we want to do - guidelines-based).
A well-known model is the Heuristic Test Strategy Model:
The HTSM divides the testing creation thinking in different axes of analysis, which, when united, enables tester to create a holistic testing strategy. These axes are the following:
Project Environment includes resources, constraints, and other elements in the project that may enable or hobble our testing. Sometimes a tester must challenge constraints, and sometimes accept them.
Product Elements are things that you intend to test. Software is complex and invisible.Take care to cover all of it that matters, not just the parts that are easy to see.
Quality Criteria are the rules, values, and sources that allow you as a tester to determine if the product has problems. Quality criteria are multidimensional and often hidden or self-contradictory.
Test Techniques are heuristics for creating tests. All techniques involve some sort of analysis of the project environment, product elements, and quality criteria.
Perceived Quality is the result of testing. You can never know the “actual” quality of a software product, but through the application of a variety of tests, you can make an informed assessment of it.
As a servant leader, instead of periodically reviewing (work done) and constraining how the team will work, you can be an outside eye, focused on making question that will make the team reflect if their action are aligned with the HTSM.
This way the team itself will become a self-organizing entity, capable of understanding its context and performing the work that needs to be done (which frees you to do something else).
answered Oct 15 at 7:14
João FariasJoão Farias
5,2691 gold badge7 silver badges26 bronze badges
5,2691 gold badge7 silver badges26 bronze badges
add a comment
|
add a comment
|
Thanks for contributing an answer to Software Quality Assurance & Testing Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsqa.stackexchange.com%2fquestions%2f41190%2fdo-you-still-need-a-test-plan-when-adopting-continuous-delivery%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
1
As the answers say, yes. However make sure that the focus stays on the value the tests add and is constantly reviewed. Test plans, although needed, can be the start of creating massive test suites (whether manual or automated) and it takes maturity to contually refactor and remove tests to keep the suite fast and lean. Just adding more tests every time there is new or changed functionality is a route to slowness. Consider KPIs that cap test running time to force choices. This will force more unit tests 'cos they are so fast.
– Michael Durrant
Oct 14 at 14:59
Details of approaching/utilising CI/CD for testing also should be a part of high level test plan.
– Vishal Aggarwal
Oct 15 at 11:15