Interview Prep Flashcards
Tell me a about yourself
What is the SDLC? (Software Development Life Cycle)
Its the process of developing software. Each part of the cycle has a entry and exit criteria along with expected deliverables.
Step 1) Gather Requirements
Step 2) Design
Step 3) Development
Step 4) Test
Step 5) Deploy
Step 6) Maintenance
How would you test a website without specified requirements ?
You’d perform ad-hoc or exploratory testing.
What’s the difference between manual and automation testing ?
The difference between manual testing and automation testing is that manual testing is completed by a person and automation is completed by tools and scripts. Some pros of Manual testing are:
- Manual testing is more suitable for Exploratory, Usability, and Adhoc testing
- Manual testing helps improve the customer experience
Some Cons are :
- Manual testing is prone to human error
- Manual testing takes longer to perform than automation
How would you test this object(Pen, Cup, water bottle) ?
Ask questions like
1) Am I given any acceptance criteria? If so I test the provided acceptance criteria
2) Ask specifics about the item (whats it made out of, what is the expected functionality of the item, where are we in the object development (this is important because this can determine how much testing is needed))
3) If I am doing ad hoc I (list all the possible test scenarios, remember to think of both positive and negative scenarios)
Lets Use the example of, How would you test this pen?
1) Ask what is the intended or expected functionality of this pen?
2) Does the pen have a cap/lid?
3) Does this pen have a single ink cartridge and tip (they have multi-color and tip pens)?
4) Is the pen single use or is it reloadable?
Going of adhoc testing I would list the following
- Verify the pen writes
- Verify the correct ink is used
- Verify the correct branding is on the pen
- Verify the pen is made from the correct material
- If the pen is reloadable, I verify that the pen’s ink can be replaced
- I verify the chewability of the pen (remember you need to think like a customer)
- I verify that the pen no longer writes once out of ink
- Verify that the pen does not write when not using the pen tip
- Verify the pen can write on multiple surfaces
- Verify the stability of the ink (does the ink bleed through, is the ink runny, etc…)
- Verify the pen puts out a reasonable amount of ink when writing
- Check to see what happens when pushing hard down on the pen tip
- Check to see what happens if the pen tip touches water (or mouth)
- If the pen has a cap, check to make sure the cap works as intended
- If the pen has a cap with a holding clip, verify the clip works correctly
Can you walk me through a normal sprint as a Manual Tester?
Typically at the beginning of the Sprint I start creating test cases for all of the tickets in sprint. I do this until I have either completed writing test cases, or until a ticket is ready for testing. You usually know what tickets will be completed first, so I like to write test cases based on ticket priority.
Once tickets are ready for testing, I will transition to testing the tickets based on priority. Using the recently created test cases to help test the ticket. This is also the time where I make improvements to my test cases for the ticket.
Through out the sprint we will perform all of the Agile ceremonies.
If I have completed my testing obligations or waiting for tickets to be ready for testing. I will write, review, or maintain existing test cases.
What is a test case?
A set of conditions or variables under which a tester will determine whether a system under test satisfies requirements. It is often used in regression.
Can you describe what regression testing is?
Testing conducted to ensure that a recent code change has not adversely affected existing features. This is usually done before a release.
What do you do when you have reported a bug, but the developer states it isn’t a bug?
1) Ask for clarification on why they think it is not a bug?
2) Explain why you reported it as a bug (ex: I know this may be the intended functionality, but from a usability stand point. This is going to provide issues for our customers because point a, b, and c)
3) If I feel that the issue is going to impact the customer negatively and the dev and I cannot align our views. Then I will include a third party in the discussion(PM). If we decide it is a bug then we move forward. If we ultimately decide it isn’t a bug, then add a comment on the ticket explaining why it is being closed as not a bug. No matter what the outcome, we will always document information on the ticket just incase the customer reports the issue later down the line.
What do you enjoy about software testing ?
I like being the last line of defense. I take pride in knowing I am contributing to the stability and quality of the applications I have worked on. It’s fun tinkering and breaking applications.
What would be the biggest challenge for you in testing ?
Some answers are:
- Unfortunately with testing being one of the last processes in feature development. It is often the area that can be impacted the most by deadlines.
- Unrefined QA processes and test strategies hindering QA as a whole.
- Test case auditing/maintenance is often overlooked as in sprint work has a higher priority
What is a test plan and what should it include?
A document outlining the scope, approach, resources, and schedule of testing activities.
What is a use case?
A set of possible sequences of interactions between systems and users in a particular environment and related to a particular goal
What types of testing are you familiar with?
Regression Testing, Functional Testing, Negative Testing, Cross-Browser Testing, Boundary Testing
What are some benefits of manual testing over automation testing?
- Manual testing is more suitable for Exploratory, Usability, and Adhoc testing
- Manual testing helps improve the customer experience