Writing

Notes on software quality

Practical writing about how I test — the checklists, the trade-offs, and the things that only become obvious after a few years of finding defects.

Featured
Permission testing
Security testing

Testing Role-Based Permissions Without Missing a Cell

Permission bugs ship because testers sample instead of enumerating. Here is the matrix method I use, and the cells almost everyone forgets to fill in.

8 min readRead
Featured
Booking systems
Payments

The Booking Bugs That Cost Real Money

Double bookings, time zones, refund windows, and payments that succeed twice. The edge cases I test on every booking flow, and why the database is the only honest witness.

9 min readRead
Test planning
QA process

A Test Plan People Actually Read

Thirty-page test plans get skimmed once and ignored. One page that answers six questions gets used every release — and settles the arguments before they start.

7 min readRead
Test automation
Selenium

A First Selenium and Java Suite That Doesn't Rot in Three Months

Most first automation suites are abandoned within a quarter. The reasons are predictable — brittle locators, sleeps, shared test data — and all of them are avoidable.

9 min readRead
QA career
Test strategy

What Changed When I Stopped Just Finding Bugs

Finding defects is the entry fee. What actually changed my work was owning the release decision — and learning to state risk instead of handing over a list.

8 min readRead
QA career
Pakistan

Breaking Into QA in Pakistan: The Route That Actually Works

No network, no referral, no expensive bootcamp. What actually gets a first software testing job here — and the order to learn things in.

9 min readRead
Mobile testing
Manual testing

Mobile App Testing: The Device Matrix and What Really Breaks

Emulators pass the tests that matter least. Interruptions, flaky networks, revoked permissions, and app updates are where mobile apps actually fail.

8 min readRead
QA process
Test strategy

Running QA in a Team That Has No QA Department

No test manager, no tooling budget, no dedicated testers. What to put in place first when quality is everyone's job and therefore nobody's.

7 min readRead
Featured
Defect management
Jira

How to Write a Bug Report a Developer Can Actually Fix

The difference between a bug report that gets fixed today and one that sits in the backlog for a month is almost never the severity. It is the write-up.

7 min readRead
Featured
API testing
Postman

API Testing with Postman: What I Check on Every Endpoint

The happy path is the easy part. Here is the checklist I run against every endpoint — auth, ownership, validation, and the failure modes the UI hides.

8 min readRead
Regression testing
ERP

A Regression Testing Strategy That Survives ERP Releases

ERP modules share data, so a fix in one screen breaks totals three modules away. Here is how I decide what to re-test when re-testing everything is not an option.

8 min readRead
Database testing
SQL

Testing Below the Interface: Why I Verify Results in SQL

The screen said the order was cancelled. The database said otherwise. A practical case for every manual tester learning enough SQL to check for themselves.

6 min readRead

Want this kind of thinking on your product?

I take on contract QA work and consulting for teams that want testing done properly rather than checked off.