Professional Documents
Culture Documents
Presenter: Khanh Do
1
Why does software have bugs?
● Miscommunication
● Programming errors
● Timeline pressures
● Change in requirements
● Software complexity
2
What is Quality Assurance?
● QA stands Quality Assurance. QA is a set of activities designed to ensure
that the developed software meets all the specifications or requirements
mentioned in the SRS document.
3
Explain what should your QA documents include?
● List the number of defects detected as per severity level
● Explain each requirement or business function in detail
● Inspection reports
● Configurations
● Test plans and test cases
● Bug reports
● User manuals
● Prepare separate reports for managers and users
4
Explain what should your SQA documents include?
● Requirement Document
● Test Metrics
● Test cases and Test plan
● Task distribution flow chart
● Transaction Mix
● User profiles
● Test log
● Test incident report
● Test summary report
5
What do you know about the SDLC?
● The software development life cycle is SDLC, which is a standard
development framework and the foundation for the processes like
Waterfall, Spiral, V Model, and Agile.
●
● It breaks down the entire development into multiple stages known as the
SDLC phases like requirement collection, analysis, design,
implementation/coding, testing/validation, deployment, and finally, the
maintenance.
6
What does it mean by STLC?
The STLC is an acronym for the Software Testing Life Cycle. It is a testing
model that proposes to execute test execution in a systematic and planned
way. In the STLC model, many activities occur to improve the quality of the
product.
● Requirement Analysis
● Test Planning
● Test Case Development
● Environment Setup
● Test Execution
● Test Cycle Closure 7
What are Test Cases?
8
What are the functional test cases?
● Functional test cases are those that confirm that the application executes
a specified business function. Most of these tests take the form of user or
business cases that resemble the standard transactions.
9
What are the non-functional test cases?
10
What are the best practices for writing test cases?
● Authentication
● Business rules
● Historical Data
● Legal and Regulatory Requirements
● External Interfaces
12
What are Non-Functional Requirements?
● Performance
● Reliability
● Security
● Recovery
● Data Integrity
● Usability
13
What is the difference between High level and
Low-Level test cases?
● High-level test cases cover the core functionality of a product like
standard business flows.
● Low-level test cases are those related to user interface (UI) in the
application.
14
What is a Test Scenario?
15
How is a Test Case different from a Test Scenario?
● A test case is a testing artifact to verify a particular flow with defined input
values, test preconditions, expected output, and postconditions prepared
to cover specific behavior.
● A test scenario can have one or many associations with a test case, which
means it can include multiple test cases.
16
What is a Test Suite?
● A test suite is a group of test cases. Each test case intends to test the
application functionality.
17
What are the documents you may refer while
writing the test cases?
● Requirement specs doc
● Feature description doc
● User stories description
● Use cases description
● Acceptance criteria
18
What are the characteristics of a good test case?
● Title: A clear and one-liner title to show the intent of the test case.
● Purpose: A brief explanation of the reason the test case is getting
created.
● Description: A representation in words of the nature and characteristics
of the test case.
● Test objects: An unambiguous feature or module getting tested.
● Preconditions: The conditions that must get satisfied during test
execution.
19
What is a good test case?
A test case is a sequence of operations controlled by constraints to determine
an application, product or service is working correctly to the expectations.
Make sure it covers all the test conditions and provides a proper definition.
Next, read the below examples and see the difference between a bad and
good test case.
21
What is a Test Metric in software testing and what
information does it contains?
● Total test
● Test run
● Test passed
● Test failed
● Tests deferred
● Test passed the first time
22
Explain what is traceability matrix?
● A test matrix is used to map test scripts to requirements.
23
What is the difference between functional and
nonfunctional testing?
● Functional testing takes care of the validation of features in an
application. It ensures that the application is behaving in the expected
manner.
● It also confirms the application meets the customer requirements. Every
such requirement has related test cases and each test case should pass
before exiting the functional testing
● Regression, Smoke, Integration and System testing are types of Functional
testing.
24
What is the difference between functional and
nonfunctional testing?
● Non-functional testing focuses on the performance, load and stress
testing of the application.
● In this, QA gathers the data, assess and find the benchmark values.
Sometimes, this data is critical for the release approvals.
25
What is white box testing and black box testing?
● Black box testing means testing the software for the outputs on giving
particular inputs. This testing is usually performed to see if the software
meets the user's requirements. There is no specific functional output
expected for running this test.
● The white box testing is done to check the accuracy of code and logic of
the program. This testing is done by the programmer who knows the
logical flow of the system.
26
Equivalence partitioning
● Its purpose – Reduce the number of test cases. It works by identifying
different sets of data. Each set has unique data values. One test from
each set of data gets executed.
27
Boundary Value Analysis
● Its purpose – Check the behavior of the system at the boundaries of
allowed data.
28
State Transition Testing
● Its purpose – Verify the allowed and disallowed states and transitions
from one state to another by various input data.
29
Decision Table Testing
● Its purpose – Work with the different combination of inputs and their
associated outputs.
● It is a black box test design technique to determine the test scenarios for
complex business logic.
30
Pairwise Testing
● Its purpose – Reduce the number of test cases while increasing the
coverage of feature combinations.
31
Explain the Positive Testing approach?
● The purpose of this testing is to ensure whether the system is confirmed
to the requirements or not.
32
Explain the Negative Testing approach?
● The purpose of this testing is to identify what the system should not do. It
helps uncover potential flaws in the software.
33
What is the difference between verification and
validation?
● Verification and validation are two critical processes that quality
assurance engineers use when testing software quality and performance.
Consider providing a brief explanation of the two processes and how they
relate to your tasks as a QA engineer.
34
What is a Test Plan?
● The Test Plan document is a document which contains the plan for all the
testing activities to deliver a quality product. The test Plan document is
derived from many activities such as product description, SRS, or Use
Case documents for all future events of the project. The Test Lead usually
prepares it, or Test manager and the focus of the document is to describe
what to test, how to test when to test, who will do what test.
35
What is Test strategy?
Test strategy helps to define the testing process that would take place in a
software development cycle. It consists of testing tasks, and lets managers
and developers know about the issues as and when they get discovered. It
includes the following information.
● Introduction,
● Resource,
● Scope and schedule for test activities,
● Required Test tools,
● Definition of Test priorities,
● Test planning and the types of test to run.
36
What are the different levels in software testing?
● Unit/Component testing
● Integration testing
● System testing
● Acceptance testing
37
How do you define the bug life cycle?
● Bug life cycle comprises of numerous statuses of an error during its life
cycle. A few examples are open, deferred, solved, reopened, fixed, solved
and closed. You may also speak about this process and how you monitor
and determine the status with the help of several points.
38
When do you decide to stop testing?
● Deadlines (Release or Testing timelines)
● Test case completion with expected pass percentage.
● Testing cost overruns.
● Attained the desired coverage of code/functionality/requirements.
● Defect discovery rate falls below the threshold.
39
What is meant by Test Coverage?
● Test coverage is a quality metric to represent the amount (in %) of testing
completed for a software product.
● It is applicable for both functional and non-functional testing activities.
This metric helps testers to add missing test cases.
40
List out Test Deliverables?
1. Test Strategy
2. Test Plan
3. Effort Estimation Report
4. Test Scenarios
5. Test Cases/Scripts
6. Test Data
7. Requirement Traceability Matrix (RTM)
8. Defect Report/Bug Report
9. Test Execution Report
10. Graphs and Metrics
11. Test summary report
41
List out Test Deliverables?
12. Test incident report
13. Test closure report
14. Release Note
15. Installation/configuration guide
16. User guide
17. Test status report
18. Weekly status report (Project manager to client)
42
Tell me about yourself
●
43
What are you passionate about?
●
44
What are your goals for the future?
●
45
Why do you like this job?
● Firstly, because that is the job where the result of your efforts it is a good
product that you want to enjoy. The work is included processing with
program data and with a variety of development options. Search for bugs
and writing user cases that facilitate the development, and allows you to
adopt the product for usage by the user. Here you need to have full
information about both the device and the product in order to find the
most hidden bugs or possible malfunctions during the program
operation.
46
Are you better working in a team or working alone?
● I get along with other people very well and I like to work in a team. I’d say
that I’m a team player. To my mind, the tasks may be done more
efficiently when you have several meanings concerning some of them.
47
How to deal with your team members?
● I think that I will be working in a big QA department which consists of
people with different lifestyles, hobbies, tastes and so on. From my
experience, the first step of the establishment of nice relationships with
your team is to cope with them during the coffee break.
48
Do you have any situations in the past where you
have some arguments with your team members?
● From my experience, I don’t have any situations where I had some conflict
with my team members.
49
Talk about a conflict or challenge you faced at
work, and how you handled it?
● In my job, I’m dealing with customers and we have been disagreements
that needed to be resolved, so I briefly explained my position and then
suggested a plan to resolve the issue effectively that enabled us to
maintain him as a client. I think everyone should face challenges you will
gain knowledge while you face’s challenge.
50
What is your goal?
51
What are your career goals?
52
What is your weakness?
53
What are your strengths?
54
What do you want to be in next 2-5 years?
55
Why are you looking for another job?
56
Why should we hire you?
● I really fit for this position because I have the great experience in this field.
I will be a good team player because I enjoy the team atmosphere. I like
the Software testing process and when team members work
hand-in-hand with each other to reach the goal in the specified timeline. I
think your company is the right place to explore my skill and I want to be
a part of your success.
57
Thanks
58