
Software testing evaluates the functionality of the software product that was developed, making sure it fulfills the requirements established but also is a tool to find defetcs/bugs. the core important characteristics of testing involves security, quality, satisfaction and effectiveness.
Software Testing Process

Testing process can de divided into the following «evolution» points:
- Planning:
- Scope of the test is set.
- Assess of risks within tests.
- Impact analysis.
- List of test resources.
- Determine the beginning and end of tests.
- Dates for testing are stablished.
- Planning Scenarios:
- Creeation of expected outputs.
- Creation of scenarios tests.
- Previous information is used to design the scenarios
- Tests scenarios need to be simple and diverse
- Environment and data creation:
- Necessary preparations are done before starting the test.
- Project installed in environment where it will be tested.
- Data necessary for the test is ready to be used.
- The data goes accordance with the scope of the development
- Running Scenarios:
- Test scenarios are perfomed.
- Time pressure is important on the tests however not indispensable.
- Results:
- Reporting the results of the tests.
- Use of SS to report errors or any other way
Levels of testing

Types of testing
Testing can be divided in three main branches:

Some types of functional testing :
- Unit testing
- Integration testing
- User acceptance testing
- Localization
- Globalization
Some Non-functional testing:
- Performance
- Endurance
- Load
- Volume
- Scalability
- Usability
Some Maintenance testing:
- Regression
- Maintenance
Testing Artifacts

Testing artifacts refers to the deliverables to the stakeholders of the project, these are:
- Test plan
- Test case
- Traceability matrix
- Test script
- Test suite
- Release Note
- Test data
- Test harness
