Manual QA Interview Questions TestPro Flashcards
What is the software development life cycle?
SDLC- Software Development Life Cycle is a process used by the software industry to design, develop and test high-quality software. It is also called Software Development Process.
Why is understanding the SDLC so important to Software QA Engineers?
SDLC includes the following stages: Requirement phase, Design phase, Coding (programming), Testing, Release (Production), Maintenance (Support). Testing is one of the most important components of the software development lifecycle Quality assurance is the planned and systematic set of activities that ensures that software processes and products conform to requirements, standards, and procedures.
What is the Agile Software Development Model?
Agile software development methodologies often called Agile, preach flexibility and pragmatism in the application delivery process. This iterative software development approach delivers value to users in small increments rather than through a single large launch. Agile teams evaluate requirements and results continuously, which leads to the efficient implementation of change.
When to use the Agile model?
- When new changes are needed to be implemented. The freedom agile gives to change is very important. New changes can be implemented at very little cost because of the frequency of new increments that are produced.
- To implement a new feature the developers need to lose only the work of a few days, or even only hours, to roll back and implement it.
- Unlike the waterfall model in agile model very limited planning is required to get started with the project. Agile assumes that the end users’ needs are ever changing in a dynamic business and IT world. Changes can be discussed and features can be newly effected or removed based on feedback. This effectively gives the customer the finished system they want or need.
- Both system developers and stakeholders alike find they also get more freedom of time and options than if the software was developed in a more rigid sequential way. Having options gives them the ability to leave important decisions until more or better data or even entire hosting programs are available; meaning the project can continue to move forward without fear of reaching a sudden standstill.
Main differences between Waterfall and Agile?
THE MAIN DIFFERENCE IS FLEXIBLY!!!
In Agile things have to be done in parallel since new features come every week and there is not enough time and resources to do things stage by stage. It provides flexibility, which makes it more bug free and more inclined towards better client satisfaction. Where waterfall model has no flexibility: it does not allow any modifications once the module is completed, in case of changes we’d have to build the entire project from scratch, and testing can be done only at the end of development module.
What does ‘Sprint’ in Agile development stands for?
A sprint is a short, time-boxed period when a scrum team works to complete a set amount of work. Sprints are at the very heart of scrum and agile methodologies, and getting sprints right will help your agile team ship better software with fewer headaches.
- What is a typical ‘Sprint’ duration?
Some people would say that the two weeks sprint has become the industry standard, but in the reality, sprint duration could be completely different. It could vary from 1 to 4 weeks and highly depends on the company, team and the project and what will work best for them.
The Scrum Master’s Responsibilities
Facilitating (not participating in) the daily standup.
Helping the team maintain their burndown chart.
Setting up retrospectives, sprint reviews or sprint planning sessions.
Shielding the team from interruptions during the sprint.
Removing obstacles that affect the team.
Walking the product owner through more technical user stories. Encouraging collaboration between the Scrum team and product owner.
The Product Owner Responsibilities
One person responsible for collecting all the information from the stakeholders and presents it in one prioritize list for the team. PO is the one who can accept or reject the work. Product owner is responsible for maximizing the value of the product and work of the development team. PO is a sole person responsible for managing product backlog.
The Product Owner Responsibilities
One person responsible for collecting all the information from the stakeholders and presents it in one prioritize list for the team. PO is the one who can accept or reject the work. Product owner is responsible for maximizing the value of the product and work of the development team. PO is a sole person responsible for managing product backlog.
What are QA Responsibilities?
- Should attend sprint-planning session. This ensures QA is in sync with development team from the start and allows QA to identify possible problem areas and risks early on.
- Should attend daily stands up. This promotes a collaborative team environment, making QA feel involved and part of the team.
- Should do testing throughout the entire duration of the sprint, the workload for QA should be spread out and this allows for issues to be found earlier instead of only at the end.
- Schedule a quick face to face handoff demonstration for each feature with the developer. This allows QA to see exactly how to the new feature works and is a good time for them ask the developer any questions.
- Should attend sprint retrospectives. Sprint retrospectives are the opportunity to define weakness and determine solutions for them.
Typical Agile Team consists of
- 1 product owner
1 scrum master (project manager)
5 developers - 2 QA
What is Software Quality Assurance?
Software quality is a perceptual and conditional thing. It may be understood differently. For consumers and some positions within the software company (upper management, sales, PR, marketing) it is about customer satisfaction. From a QA standpoint, it is about software being up to requirements.
Software QA is the process of monitoring and improving all activities associated with software development, from the gathering of requirements, design, and reviews to coding, testing, and implementation.
What is Software Testing?
Software testing is a process of executing a program or application with the intent of finding software bugs.
It can also be stated as the process of validating and verifying that a software program or application or product:
meets the business and technical requirements that guided its design and development;
works as expected;
can be implemented with the same characteristic.
What is the difference between Software Testing and Software QA?
Testing is mainly an ‘error detection’ process focusing on improving the source code.
Software QA is ‘preventative’. It aims to ensure quality in the methods & processes at all the stages of SDLC. (“Quality Assurance” measures the quality of processes used to create a quality product).
Why software quality is not perfect?
You can’t find all bugs in software,
Not all bugs which are found will be fixed.
To make perfect software takes a long time but, in reality, we do have not enough time to fix all the bugs.
What is adhoc testing?
AD HOC TESTING is a method of software testing without any planning and documentation. The tests are conducted informally and randomly without any formal procedure or expected results.
What is a Bug?
A software bug is an error, flaw or fault in a computer program or system that causes it to produce an incorrect or unexpected result, or to behave in unintended ways.
Bug report components are?
- Short summary (Bug Title);
- Environment;
- Steps to reproduce;
- Expected and actual results;
- Attachments if applicable;
What t is JQL?
JQL stands for Jira Query Language and is the most powerful and flexible way to search for your issues in Jira. JQL is for everyone: developers, testers, agile project managers and business users.
What kind of searching is in Jira?
Basic and Advanced Search.
What is Confluence? What kind of data you can found in Confluence?
Confluence is a collaboration wiki tool used to help teams to collaborate and share knowledge efficiently. With confluence, we can capture project requirements, assign tasks to specific users, and manage several calendars at once with the help of Team Calendars add-on. You can also find in Confluence:
Private documentation about your project
Vocabulary glossary abbreviations
Environments and any other information about projects etc
How to install tools
Contact information of team members
PTO calendar
What is a Test Case?
A set of test inputs, execution conditions, and expected results developed for a particular objective, such as to exercise a particular program path or to verify compliance with a specific requirement.
What are the most important components of Test Cases?
- Test case ID (assigned automatically by TC management system)
- The purpose (Title, Description) of the test case
- Instruction on how to get from the application base state to a verifiable application output or expected result
- Expected result
- Execution Properties:
- Actual Result
- Pass/Fail indicator
What is a Check List?
A checklist is a catalog of items/tasks that are recorded for tracking. This list could either be ordered in a sequence or haphazard.
It is often referred to as a simplified version of a test case. In some companies, this format is used instead of test cases to decrease writing maintenance time.
What is a Test Suite?
The test suite is a collection of test cases that are intended to be used to test a software program to show that it has a specified set of behaviors. A test suite often contains detailed instructions or goals for each collection of test cases and information on the system configuration to be used during testing. It can take any of the three states namely active, in progress and completed.
How many Test Cases can you create if you don’t have requirements?
To begin with, I will try to test it based on common sense. When I believe I am at the stage where I can ask questions, I will go and talk to people — team members first, and then the product manager. Based on the information I collected, I will create a test plan and try to get a second opinion on it, probably by sending my doc to PM and QA manager.
How do you write Test Cases?
- Freestyle
- Gherkin style.
What is Smoke Testing?
Smoke test (also confidence testing, sanity testing) — superficial build acceptance. Smoke testing refers the first test made after assembly or repairs to the system, to provide some assurance that the system under test will not catastrophically fail.
Smoke test — is light type testing, objective is figure out, to verify that all build works, is a alive. When the application was released in testing environment the QA team started smoke test.
What is Sanity Check Testing?
The difference between smoke and sanity, at least as I understand it, is that the smoke test is a quick test to see that after a build the application is good enough for testing. Then, you do a sanity test which tells you if a particular functional area is good enough that it actually makes sense to proceed with tests on this area.
What is Bug Triage?
Bug triage is a process where each bug is prioritized based on its severity, frequency, risk, etc. Triage is used in software testing / QA to define the severity and priority of new defects.
- Why do we need to have ‘Bug Triage’?
The goal of bug triage is to evaluate, prioritize and assign the resolution of defects. The team needs to validate the severity of the defect, make changes as per need, finalize resolution of the defects, and assign resources. Mainly used in agile project management.
- Why do we need to have ‘Bug Triage’?
The goal of bug triage is to evaluate, prioritize and assign the resolution of defects. The team needs to validate the severity of the defect, make changes as per need, finalize resolution of the defects, and assign resources. Mainly used in agile project management.
What are Severity and Priority?
Bug Severity is the degree of impact that a defect has on the system. Bug Priority is the order of severity that has impacted the system. Severity is related to the standards and functionality of the system; priority is related to scheduling.
Which test management tools did you use before? Do you like it? And why?
In my current project, we are using Zephyr. It’s a great tool. Zephyr uses structured and freeform test execution cycles and is easy to use.
What is a Test Cycle?
A Test Cycle is a container for Test Cases and Test Suites that spans multiple users and projects.