Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 984453
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 16, 20262026-05-16T05:01:04+00:00 2026-05-16T05:01:04+00:00

My friend asked me this question today. How to test a vending machine and

  • 0

My friend asked me this question today. How to test a vending machine and tell me its test cases. I am able to give some test cases but those are some random thoughts. I want to know how to systematically test a product or a piece of software. There are lots of tests like unit testing, functional testing, integration testing, stress testing etc. But I would like to know how do I systematically test and think like a real tester ? Can someone please explain me how all these testings can be differentiated and which one can be applied in a real scenario. For example Test a file system.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-16T05:01:04+00:00Added an answer on May 16, 2026 at 5:01 am

    Even long-time, well respected, professional testers will tell you: It is an art more than a science.

    My trick to designing new test cases starts with the various types of tests you mention, and it must include all those to be thorough, but I try to find a list of all the ways I can interact with the code/product.

    For the vending machine example, there are tons of parts, inside and out.

    Simple testing, as the product is designed to work, gives plenty of cases

    • Does it give the correct change
    • How fast can it process the request
    • What if an item is out of stock
    • What if it is overfilled
    • What if the change drawer is full
    • What if the items are too big, or badly racked
    • What if the user puts in too little money
    • What if it is out of change

    Then there are the interesting cases, which normal users wouldn’t think about.

    • What if you try to tip it over
    • Give it a fake coin
    • Steal from it
    • Put a coin in with a string
    • Give it funny amounts of change
    • Give it half-ripped bills
    • Pry it open with a crow-bar
    • Feed it bad power/brownout
    • Turn it off in the middle of various operations

    The way to think like a tester is figure out every possible way you can attack it, from all the “funny cases” in usual scenarios, to all the methods that are completely outside of how it should be used. Any point of input, including ones you might think the developers/owners have control over, are fair game.

    You can also use many automated test tools, such as pairwise test selection, model-based test toolkits, or for software, various stress/load and security tools.


    I feel like this answer was a good start, but I now realize it was only half of the story.

    Coming up with every single way you can possibly test the system is important. You need to learn to stretch the limits of your imagination, your problem decomposition skills, your understanding of chains of functionality/failure, and your domain knowledge about the thing you are testing. This is the point I was attempting to make above. With the right mindset, and with enough vigilance, these skills will start to improve very quickly – within a year, or within a few years (depending on the complexity of the domain).

    The second level of becoming a very competent tester is to determine which tests you should care about. You will always be able to break every system, in a ton of different ways. Whether those failures are important or not is a more interesting question, and is often much more difficult to answer. The benefit to answering this question, though, is two-fold.

    First, if you know why it is important to fix pieces of the system that break (or to skip fixing them!), then you can understand where you should focus your efforts. You know what you can afford to spend less time testing, and what you must spend more time on.

    Second, and more importantly, you will help your team expose where they should be focusing their efforts. You will start to uncover things that are called “second-order unknowns”. Your team doesn’t know what it doesn’t know.

    The primary trick that helps you accomplish this is to always ask “why?”, until whoever you are asking is stumped.

    An example:

    Q: Why this test?

    A: Because I want to exercise all functionality in the system.

    Q: Why does this system function this way?

    A: Because of the decisions that the programmer made, based on the product specifications.

    Q: Why did our product specifications ask for this?

    A: Because the company that we are writing the software for had a requirement that the software works this way.

    Q: Why did that company we are contracting for add that as a requirement?

    A: Because their users need to do :thing:

    Q: Why do the users need to do :thing:?

    A: Because they are trying to accomplish :xyz:

    Q: Why do they need to accomplish :xyz:

    A: Because they save money by doing :abc:

    Q: Why did they choose :xyz: to solve :abc:?

    A: … good question.

    Q: What could they do instead?

    A: … now that I think about it, there’s a ton of options! Maybe one of them works better?

    With practice, you will start knowing which specific “why” questions to ask, and which to focus on. You will also learn to start deeper down the chain, and be less mechanical in your approach.

    This is no longer just about ensuring that the product matches the specifications that the dev, pm, customer, or end user provided. It also helps determine if the solution you are providing is the highest quality solution that your team could provide.

    A hidden requirement of this is that you must learn that half your job as a tester is to ask questions all the time. You might think that your team mates will be annoyed at this, but hopefully I’ve shown that it is both crucial to your development, and the quality of the product you are testing. Smart and curious teammates who care about the product (who aren’t busy and frustrated) will love your questions.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

My friend asked this question I am not sure why it is on my
I was asked this question by a friend, and it piqued my curiosity, and
A friend asked me a question today about an assignment problem. I found a
I asked to my friend about this question, he said that it is used
this is an interview question my friend was asked yesterday. The question was something
Yesterday my friend asked me a question about this query: select * from user
One of my friend was asked this question in an interview - You have
This is just a random question my friend asked me which I also do
This question hasn't been asked yet. Some solutions probably have been proposed though to
This question could asked somewhere before but I could not find it, anyways. So

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.