Dokven

Loading Dokven.
Interview 12 min read

Scenario and behavioral interview questions

Practical "how would you test X" scenarios plus behavioral questions, with structured model answers using the STAR method.

Scenario questions test how you think, not what you have memorised. There is rarely one right answer; the interviewer wants to see structure and breadth. For any "how would you test X", a reliable framework is: ask clarifying questions, then cover functional, usability, performance, security, and edge cases. For behavioural questions, use STAR: Situation, Task, Action, Result.

How would you test... (scenario questions)

+How would you test a login page?
I start with the happy path: valid email and password should log in and land on the right page. Then negative cases: wrong password, wrong email, blank fields, and the account-locked flow after several failed attempts. I cover usability and UI: password masking, the show-password toggle, tab order, error message clarity, and the forgot-password and remember-me options. Finally security and edge cases: SQL injection and script in the fields, case sensitivity of the email, session timeout, and whether the back button after logout still shows protected pages.
+How would you test a search box?
Functionally, I check that a valid term returns the right results, a partial term works, and a term with no matches shows a clear "no results" message rather than an error. I test edge cases: empty search, only spaces, special characters, very long strings, case sensitivity, and leading or trailing spaces. I check usability like autocomplete, recent searches, and how fast results return. And I check behaviour like pagination, sorting, and whether the results are actually relevant to what I typed.
+How would you test a file upload feature?
First the happy path: upload an allowed file type within the size limit and confirm it saves and displays correctly. Then I test the boundaries: the maximum allowed size, one byte over, an empty zero-byte file, and a wrong or disguised file type. I cover behaviour during upload: progress indicator, cancelling mid-upload, network drop, and uploading multiple files at once. Security is important here, so I test that an executable or oversized file is rejected cleanly and that a malicious filename is handled safely.
+How would you test an e-commerce checkout flow?
I follow the end-to-end path: add items to the cart, update quantities, apply a valid discount code, and complete payment, then verify the order confirmation, email, and that stock decreased. I test negative and edge cases: an expired or invalid coupon, an out-of-stock item, a declined card, and a payment that times out mid-transaction to make sure I am not charged without an order. I check the totals math carefully, including tax and shipping, plus cross-browser and mobile behaviour. Payment flows are high risk, so I focus heavily on the failure and double-submit cases.
+How would you test a pen?
This question is really testing whether I ask questions before diving in, so first I clarify: who is it for, what surface, what conditions? Then I cover functional testing: does it write smoothly, in the right colour, without skipping or leaking? Usability: is it comfortable to hold, does the cap fit, is the click mechanism reliable? And non-functional and edge cases: does it write upside down, after being dropped, in the cold, how long does the ink last, and is it safe if a child chews it? The point is showing structured, exhaustive thinking, not the pen itself.
+How would you test an ATM?
I start with the core flows: insert card, enter the correct PIN, withdraw a valid amount, and confirm the cash, the receipt, and the balance update. Then negative cases: wrong PIN with card blocking after three tries, requesting more than the balance or the daily limit, and an amount the machine cannot dispense in available notes. I test interruptions: card pulled mid-transaction, power cut, or network loss, making sure the account is never debited without dispensing cash. And I cover usability, timeouts that return the card, and security like a hidden PIN entry.
+How would you test a lift or elevator?
Functionally, I check it goes to the floor requested, the doors open and close correctly, and the up and down calls work from each floor. I test edge and load cases: the maximum weight limit and the overload alarm, pressing many floors at once, and pressing a floor that is already current. Safety and failure cases matter most: behaviour during a power cut, the emergency stop and alarm button, doors reopening when something blocks them, and what happens if the controller fails. I also cover usability like the display and buttons lighting up, and accessibility for wheelchair users.
+How would you test a feature with no documentation or requirements?
I treat the missing documentation as my first finding and raise it, then I gather information from any source I can: the developer, the product owner, similar existing features, and the app's own behaviour. I explore the feature to map what it does and document my understanding as I go, noting assumptions clearly. I test against common sense and user expectations, like sensible validation and clear errors, and I confirm my assumptions with the team before signing off. Exploratory testing shines here, because I am learning and testing at the same time.

Behavioral questions (use STAR)

+Tell me about a bug you are proud of catching.
Situation: On an e-commerce project, the team was about to release a new discount-code feature. Task: I was testing the checkout regression around it. Action: Beyond the happy path, I tried applying the same percentage code twice and stacking it with an automatic sale, which was not in the test cases, and found the discount applied repeatedly, dropping the price near zero. Result: I logged it with clear steps and a recording, it was fixed before release, and we added it to the regression suite. It taught me that the most valuable bugs often live just outside the documented cases.
+Tell me about a time you disagreed with a developer.
Situation: I raised a bug where an error message was confusing, and the developer felt it was working as designed. Task: I needed to make the case without it becoming personal. Action: Instead of arguing opinions, I framed it around the user, shared the acceptance criteria, showed a short recording of a real person likely getting stuck, and suggested we ask the product owner rather than decide between ourselves. Result: The product owner agreed it needed clearer wording, and it was fixed. I learned to disagree with data and the user in mind, not ego, which keeps the relationship healthy.
+Tell me about a time you had a very tight deadline.
Situation: A release was moved up and I had two days instead of a week to test a payment change. Task: I had to give the team a confident go or no-go decision in that window. Action: I prioritised by risk: I ran smoke tests, focused my deep testing on the changed payment paths and the critical regression around them, and I was transparent about exactly which low-risk areas I was deliberately skipping. Result: We shipped on time with no critical issues, and the team knew precisely what was and was not covered. The lesson was that under pressure, clear prioritisation and honesty beat trying to test everything badly.
+Tell me about a time a bug slipped past you into production.
Situation: Early in a project, a bug reached production where a date displayed in the wrong format for users in another region. Task: I had to own it and prevent a repeat. Action: I did not get defensive; I helped reproduce and triage it fast, then I looked at why I missed it, which was that I had only tested in my own locale. Result: It was patched quickly, and I added locale and timezone cases to our standard checklist so it could not happen again. I am honest in interviews that everyone misses bugs; what matters is owning it and improving the process.
+How do you handle a situation where you are blocked and cannot test?
I do not just sit idle, and I do not stay silent. First I raise the blocker immediately to whoever can unblock me, with specifics, because a quiet blocker hurts the whole sprint. While I wait, I use the time productively: writing or reviewing test cases, updating the regression suite, exploring related stable areas, or improving documentation. I keep a clear record of what is blocked and why, so the delay is visible. Communicating early and staying useful is the key, rather than going quiet until someone asks.
+Why did you choose a career in QA, and what makes a good tester?
I am drawn to the mindset: I naturally ask "what if?" and enjoy thinking about how things could go wrong before users do. A good tester is curious, detail-oriented, a clear communicator, and genuinely cares about the end user's experience, not just whether the code runs. The part I find rewarding is being the safety net that protects users and the company's reputation. I also like that QA keeps evolving, so I am always learning new tools and techniques, which keeps the work fresh.
Key takeaways
  • For any "how would you test X", show a structure: clarify first, then functional, usability, performance, security, and edge cases. Breadth beats a long list of random checks.
  • The trick questions like "test a pen" are checking whether you ask clarifying questions before you start. Always ask first.
  • For behavioural questions, use STAR and keep the Result concrete. End with what you learned.
  • Be honest about missed bugs and disagreements. Owning a mistake and improving the process reads as senior, not weak.
  • Frame everything around the user and risk. That single habit makes every answer sound more thoughtful.