QA General Test Scenarios
These are some of the basic test scenarios which should be covered during the testing.
CRUD Operations
System Messages Verification
Sorting & Pagination
Date Format Verification
Special Character & Validations
Spelling/Grammar/Alignment
If the test case scenario is “Validate the login functionality” – This would take in 3 test cases
- Login (successful)
- Login-unsuccessful when incorrect username is entered
- Login-unsuccessful when incorrect password is entered.
Each test case would in turn have steps to address how we can check a particular test condition is satisfied or not.
- Test Case is ‘How to be tested’ and Test Scenario is ‘What to be tested’
actually, a test case is a set of steps to be executed ,in order to validate the scenario.
Test case document template
- Regression testing is a black box testing technique.
- Re-executing the tests that are impacted by the code changes.
- Regression testing make sure that the older programming still works with the new changes.
- Tools: selenium can be use for browser based regression testing
- Testing technique performed to determine whether or not the software system has met the requirement specifications.
- Evaluate the system's compliance with the business requirements.
User Acceptance Testing
Business Acceptance Testing
Alpha Testing
Beta Testing
Test the Functional Correctness and Completeness,Data Integrity,Data Conversion,Usability,Performance,Timeliness,Confidentiality andAvailability,Installability and Upgradability,ScalabilityDocumentation of the final system.
Acceptance testing is basically done by the user or customer although other stakeholders may be involved as well.
The goal of acceptance testing is to establish confidence in the system.
- Black box testing technique
- Include both functional and non-functional testing/business process, use cases, or other high level descriptions of system behavior, interactions with the operating systems, and system resources..
- evaluate complete system functionalities.
- Types : Interchangeability, reliability ,performance ,functionality,Scalability ,load and stability,stress,regression.
- System testing is most often the final test to verify that the system to be delivered meets the specification and its purpose.
- It is automating web applications for testing purposes.
- Not a tool, but an API.
- Supports multiple browsers.
- Supports multiple languages,Operating systems.(PHP,Java,C#,Ruby)
- can integrate with other APIs as well(JUnit,NUnit,TestNG)
- Open Source
- Google developers are working on this API.
- Four components- Web driver,IDE,Grid,Remote Control.
Selenium Web Driver
Browser based regression tests
Selenium IDE
A Firefox add-on that will do simple record-and-playback of interactions with the browser.allows us to record, edit, and debug tests.
only work on Firefox.
- Testing of combined parts of an application to determine if they function correctly.
- Two ways, Bottom-up integration and Top-Down integration
- Top-Down integration-highest-level modules are tested first and progressively, lower-level modules are tested thereafter.
- Bottom-up integration low-level modules are tested first and progressively, higher-level modules are tested thereafter.
- Integration testing tests interfaces between components.
- After integrating two different components together testers do the integration testing.
Integration testing tools
- Each unit is tested separate before integrating them in to modules.
- This give the ability to verify that the system functions work as expected.
- The goal of unit testing is to isolate each part of the programmer and show that individual parts are correct in terms of requirements and functionality.
- unit tests are basically written and executed by software developers.
- White box texting method is used for executing the unit test.
Advantages of unit testing
- Issues are found at early stage,the issues can be found very early and can be resolved then and there without impacting the other piece of codes.
- Unit testing helps in maintaining and changing the code. chances of impact of changes to any other code gets reduced.
- Since the bugs are found early in unit testing hence it also helps in reducing the cost of bug fixes.
- Unit testing helps in simplifying the debugging process.
Unit testing tools
- J Unit
is a framework that I use for writing both unit and integration tests. it is the most popular testing framework for Java
programming language
- Mockito is the most popular mocking framework for writing unit tests.
- Db Unit is a JUnit extension that can be used to initialize the database into a
known state before each integration test and ensure that the database
contains the correct data