QA Terms Flashcards
Quality Assurance
The process in place that plans what testing efforts to use and how to perform them. A method that sets the standards of your projects.
Quality Control
Product oriented and all about maintaining the integrity of your product. Improving the quality of your product and ironing out any issues that are found. QC dependent on QA.
Software Testing
The actual testing process. Finding bugs/defects and validating if the software meets customer requirements and the standards set by the organization.
When should QA activities should start?
As soon as the project begins and the software is ready to be tested. The earlier the better to improve product quality.
Test Plan
Overall testing approach for an entire project.
Test Strategy
How testing should go for a specific feature or application.
Software Testing Life Cycle
Requirements phase Planning Phase Analysis phase Design Phase Implementation Phase Execution Phase Conclusion Phase Closure Phase
Format of a Test Case
Test case ID Test case description Severity Priority Environment Build version Steps to execute Expected results Actual results
What makes a good test case?
A good test case is one that will assist the tester in finding a bug or a defect. Also one that has a well thought out expected results section.
What would you do if you have a large suite to execute in very less time?
Prioritize the items that have a higher priority assigned to them and move on to the lower priority ones afterwards. That way, the most important aspects of the software are tested first. Also, if it’s a possibility to receive customer input on which software functionalities they deem the most important, the test cases can be prioritized that way as well.
Suppose you find a bug in production, how would you make sure that the same bug is not introduced again?
The best way is to immediately write a test case for the bug/defect and include it in the regression suite. We can also keep track of this test case for the next release and include it each time in our planned execution so that we ensure the issue does not appear again.
Functional Testing
A type of testing which verifies that each function of the software application is meeting the set requirements and specifications.
Unit Testing Integration Testing System Testing Sanity Testing Smoke Testing Interface Testing Regression Testing Beta/Acceptance Testing
Non-functional testing
A type of testing to check non-functional aspects of a software application. Testing that might not be explicitly stated in the requirements.
Performance Testing Load Testing Stress Testing Compatibility Testing Usability Testing Security Testing
Negative Testing
A type of testing that validates whether the system is behaving correctly in case of any invalid inputs. The system should use error handling to display proper error messages rather than technical messages that the user won’t understand.
Positive Testing
Validates that the system is able to handle proper requests and inputs.