Testing has been an integral part of SDLC, it is an exponentially growing vertical of web and software Development. We are starting a blog series on every aspect of testing. This series will cover all part of testing in brief detail. Lets start with basic into and testing jargons.
What is Software Testing?
“Testing is a process of verification and validation”.
Verification:-The software application needs to conform to the predefined requirement specification. As the software development goes through different phases, it is necessary to ensure that deliverable of each phase is as per the specification. Verification makes sure that the software application is getting developed in the correct way with respect to the requirements.
“The process of evaluating documents / work-product of a development phase.”
Validation:-The software application should functionally do what it is supposed to and it should satisfy all the requirements set by the customer and end user. Validation is done during or at the end of the development process to determine whether the application satisfies specified requirements. Validation is done by executing the intended functionality on the developed application.
“The process of evaluating software application during or at the end of the development process.”
Importance of Testing:-
- As per definition of testing “It’s a process of verification and validation”. So it will verify and validating the product or application before it goes live in the market.
- Testing ensure the Quality of the product. Quality product delivered to the customers helps in gaining their confidence.
- Testing make sure that the software meets the requirements and satisfying the needs of the customer.
- Testing ensure that the application should not result into any failures because it can be very expensive in the future or in the later stages of the development.
- It ensure that the application is bug free and user friendly.
- Testing makes product or application more reliable & efficient.
- Testing is required for an effective performance of software application.
- Testing is executing a system in order to identify any defects or missing requirements in contrary to the actual requirements.
- Developers feels confidence that their code is bug free but if not, if developers know that there is a bug in code, they will not going to tell because they have to rework on that bug otherwise. So it will be time consuming for them.
Why Learn Software Testing:-
- There is continuous demand for good software testing professionals in software industry in large numbers.
- Software testing is an integral part of SDLC.
- A Person with basic programing understanding can also learn software testing.
- A qualified automation engineer can draw much more salary than a developer with similar work experience (years).
- Most of the business demands automation of operations using software when software is developed it needs to be tested.
- Lots of opportunities, It’s a myth that there are no or little growth opportunities in software testing career.
Career Growth in Software Testing:-
Check the flow diagram: –
There are two types of testing done in organization:-
1. Manual testing
2. Automation testing.
Manual Testing: – Manual Testing is a process of testing the application manually without using any automation tool, and finding bugs as much as possible. In this type of testing, Tester plays an important role as end user and verifies all features of the application to ensure the behavior. 100% automation is not possible through automation testing so we can’t skip manual testing.
Automation Testing: – Automation Testing is a process of testing the application in which software tools execute pre-scripted tests on a software application before it is released into production. Test automation can automate some repetitive but necessary tasks in a formalized testing process to reduce human effort and time. Mostly used while doing regression testing.
Hence we finish our intro blog, this series will look into all aspects of manual and automated testing. After completion of this series you will be able to understand and execute basic level of Testing. We will try to publish a new blog in this series every Wednesday so stay tuned and add bookmark to this series here.