Software testing is the process of identifying the completeness, correctness, and quality of the developed software.
![]() |
Introduction to Software Testing |
It is a process of checking the developed software as per business requirements or not and finding the defect.
As we know Software development means construction, while testing involves essential "destruction" to identify defects and unexpected behavior of the Software to ensure functionality. As both are essential and they are creating reliable software.
As a Software Tester, most of the time, defects are found when we are trying to break the functionality I.e., by performing unplanned or negative steps or supplying negative input to finding the defects.
The goal of software testing is to deliver quality software products to the clients.
Testing Modern Applications:
What's on the Checklist? or What to test in modern Applications?
1. Checking How Things Work (Functional Testing):
We make sure the software does what it's supposed to. It's like checking if a car's engine starts when you turn the key.
2. Making Sure It Looks Good (User Interface Testing):
We look at how the software looks and feels. Think of it like making sure the buttons and text are in the right place and the software behaves well. Ex - spelling mistakes, alignment of the web elements, labels, buttons, links, fonts, responsiveness...etc.
3. Testing How Easy It Is (Usability Testing):
We see if the software is easy for people to use. It's like checking if the doors and windows in a house open and close smoothly. Ex - Cursor blinking in login, tab button working, breadcrumb, tooltips, confirmation messages...etc.
4. Checking Compatibility (Compatibility Testing):
We make sure the software works well in different places. like different screen sizes, networks 2G, 3G, 4G, OS, browsers, Gateways...etc.
5. Keeping It Safe (Security Testing):
We check if the software is safe from bad things happening, ex - Authentication, authorization, URL manipulation, SQL injection, XSS attack, brute force attack, session management, etc.
6. Testing Its Strength (Performance Testing):
We see how well the software holds up under different situations. It's like testing how many people a bridge can hold without falling. Ex - Load, stress, endurance.
A. Manual Testing: Human Involved
If any activity i.e., testing activity such as functional, UI, usability...etc are carried out with manual efforts then it is called Manual testing.
B. Automation Testing:
If testing activity is carried out using tools like - Selenium, QTP, Load Runner...etc. then it is called automation testing.
But remember, automation tools don't replace humans entirely and only help in the testing process.
C. What type of testing can be automated?
We can do all testing manually, but we automate functional testing and performance testing only
Testing Type | Manual Testing | Automation Testing |
Functional | Possible | Possible |
Security | Possible | Not possible |
UI | Possible | Not possible |
Performance | Possible | Possible |
Compatibility | Possible | Not Possible |
Usability | Possible | Not Possible |
D. Why do we need Software testing?
In the Software development life cycle, testing is an essentials phase because of the following:
i. To ensure that software is bug-free.
ii. To ensure that system meets customer requirements.
iii. To ensure that system meets the end user's expectations.
iv. Fixing the bugs identified after release to the production environment is expensive and that's why we need Software testing!
Well, testing software is super important. By using different testing methods – both with people and tools – we can make sure the software works well, looks good, and makes everyone happy.
✨useful, never read before like this about software testing
ReplyDelete