My Week in Software Testing: Key Takeaways
This past week, I dove into a bunch of important concepts in Software Testing, and I thought I’d share what I’ve learned. Here’s a quick rundown:
1. Regression Testing
What it is: Making sure new code changes don’t mess up existing features.
Why it matters: It’s all about keeping the software stable after updates.
2. Re-testing
What it is: Checking if specific bugs that were fixed are really gone.
Why it matters: It ensures the fixes actually worked as intended.
3. Regression vs. Re-testing
Key Difference: Regression testing checks the whole system for issues after changes, while re-testing focuses just on the specific fixes.
When to use: Regression for overall stability; re-testing for verifying fixes.
4. Smoke Testing
What it is: A quick check to make sure the basic features work before diving deeper.
Why it matters: It saves time by catching big issues early on.
5. Sanity Testing
What it is: A focused check after minor changes to make sure everything’s working as expected.
Why it matters: It’s a quick way to validate specific parts of the software without a full test.
6. Functional vs. Non-Functional Testing
Functional Testing: Checks if the software does what it’s supposed to do.
Non-Functional Testing: Focuses on things like performance, security, and usability.
Key Difference: Functional is about what the software does; non-functional is about how well it does it.
7. Performance Testing
What it is: Testing how the software performs under different conditions, like heavy load.
Why it matters: It ensures the software can handle real-world usage without slowing down.
8. Security Testing
What it is: Making sure the software is safe from potential threats.
Why it matters: With security being a top concern, this testing is crucial to protect both the software and its users.
9. Compatibility Testing
What it is: Ensuring the software works across different devices, browsers, and operating systems.
Why it matters: It’s essential for a consistent user experience, no matter where or how it’s used.
10. Installation Testing
What it is: Checking that the software installs and uninstalls correctly.
Why it matters: A smooth installation process is key to a good first impression.
11. Sanitation/Garbage Testing
What it is: Testing how the software handles invalid or unexpected input.
Why it matters: It helps prevent crashes or weird behavior when something unusual happens.
Wrapping Up
This week has been packed with learning, and I’m feeling much more confident in my understanding of these testing concepts. Whether it’s ensuring new features don’t break the old ones or checking how the software handles heavy loads, each of these tests plays a crucial role in delivering high-quality software.
I’m excited to keep building on this knowledge and apply it to real projects. For me, software testing isn’t just about finding bugs—it’s about making sure everything works smoothly and securely for the users.
Looking forward to more learning ahead!
Subscribe to my newsletter
Read articles from Fahad Chandio directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by