AGILE METHODOLOGY & SOFTWARE TESTING LIFETIME CYCLE (STLC).
Let’s start by going over the high-level definitions of Agile Methodology.
- Agile means that you shift the product incrementally over a few days, rather than waiting for the entire project to be completed and then release.
- Agile releases new versions on a regular basis.
EPIC and USER STORY represent the basic terms of Agile Methodology.
- Epic is a big work item.
- It is not possible to deliver it in a single iteration.
- A User Story is the smallest unit in Agile Methodology.
- A User Story is a description of how a piece or work will bring a specific value back to the customer.
- User Stories are short sentences that describe the outcome you want.
- Once the team has agreed on them, they can be added later.
- These User Stories can be expressed in one sentence.
"As [a person], I [want], [so]" This is how Jira writes User Stories. Example: I would like to log in to my internet banking dashboard as an End User/ Customer to make my payment code.
MAJOR ADVANTAGES IN AGILE METHODOLOGY
- It increases the product’s quality.
- It is possible to make changes.
- It is predictable in terms of costs and schedules.
- It is transparent.
CHALLENGES IN AGILE METHODOLOGY
- Limited documentation
- No finite end.
SOFTWARE TESTING LIFE CYCLE
- Software Testing is also standardized. Testing, like Software development, has a lifecycle.
- Take a look at the following:
This is the Software Testing Life Cycle. Let’s discuss each phase:
- It is crucial to fully understand the requirements for both developers and testers.
- Before any project can be kicked off, a meeting is held where all requirements are clarified to the team.
- A test plan is a document that describes all the testing activities required to produce a high-quality product.
- After analyzing the business requirements for the project, this document was prepared.
- It is usually prepared by the Senior QA or QA Lead in the Agile team.
- The document’s main purpose is to describe.
- What should I test?
- What can’t be tested?
- Infrastructure that is required for Testing, the tools needed to test.
- Testing duration.
- Risks & contingencies plan.
TEST CASE –
- This stage is where Test cases are prepared, keeping in mind the client’s requirements.
- Agile is a method of creating test cases module by module.
- This is the most important aspect of the testing process.
- It covers hardware configuration, operating system configurations, software configurations, test terminals, as well as other support needed to run the test.
- It is not acceptable to mix up QA and development servers. Both should be distinct.
- The Test Server and Development Server each have their own databases. The Testing Server should run faster to allow test cases to be completed smoothly.
- The testers conduct the testing using the test plans and test cases that have been prepared.
- Once a bug is fixed, it is reported to the Development team.
- This stage is where the client sees the QA team before the product goes live.
- This is the last check before the project goes live.
- This is usually done after the product has been delivered.
- It is mainly composed of:
- Ensuring Test Completion: To make sure that each test case is completed.
- Handing Over the Test Artifacts This includes details like which automated tests were used. It would be useful to have this information available for maintenance.
- Project Reflections: This includes discussion on errors that should be avoided in the future. These are all documented.
- Test Plan and Test Work Products.