software testing interview - q&a and tips

53
MANUAL SOFTWARE TESTING TOP INTERVIEW QUESTIONS

Upload: pankaj-dubey

Post on 24-Jan-2018

47 views

Category:

Software


3 download

TRANSCRIPT

Page 1: Software Testing interview - Q&A and tips

MANUAL SOFTWARE TESTING

TOP INTERVIEW QUESTIONS

Page 2: Software Testing interview - Q&A and tips

1: Communications2: Basic analytical and Logical skills

3: Explain how the requirement is generated and how it reaches you?requirement lifecycle.4: Explain your role in your current project?

5: Justify your experience by answering some experienced based questions,It could be any real time scenario.Like : an average how many test cases you execute in a day? or how youescalate the issues?

6: Write some some sample test cases for any object?

An Interviewer's Expectation

Page 3: Software Testing interview - Q&A and tips

Software testing is a practice of executing anapplication under test (AUT) with an intention offinding bugs and errors before application is deployedin production environment.

1: what is Software Testing?

Page 4: Software Testing interview - Q&A and tips

Testing is important, to make sure that:

• All business requirements are implemented• Functionalities are behaving as it is expected• Application is secure enough against security threats

• Does not break under working circumstances• Does not harm the business reputation

• Performs its functions within an acceptable time• Works well on all supported OS, devices and screens• To make sure that customer can trust and rely on your product

2: why Testing is important?

Page 5: Software Testing interview - Q&A and tips

“QA is a systematic and scientific approach of monitoring andimproving the software development process.”

3: What is QA & QC?

“QC is a validation activity where the quality of the developedproduct is evaluated with a benchmark or any competitiveprogram’s set standard to make sure that the software qualityis adhering the defined or expected quality.”

Page 6: Software Testing interview - Q&A and tips

QUALITY ASSURANCE QUALITY CONTROL

QA is a verification process QC is a validation activity

QA is process oriented QC is product oriented

QA prevents the defect QC finds the defect

It improves the development process It improves the developed product quality

Requirement document, design review and code reviews are done as part of this

Product testing is done as part of this activity

Performed without the program execution Performed by executing the program

4: what is difference between QA & QC?

Page 7: Software Testing interview - Q&A and tips

“STLC stand for Software Testing Lifecycle. STLC is a set ofprocess which is executed in a systematic manner to achieve thetesting goal”

TEST PLANNING

TEST DESIGNING

TEST ENVIRONMENT

TEST EXECUTION

BUG REPORTING & MANAGEMENT

RTM (REQUIREMENT TRACEABILITY MATRIX)

TEST REPORTING

5: what is STLC?

Page 8: Software Testing interview - Q&A and tips

A test plan is the first phase of STLC where Test Planning documentis created, it describes that what and how to achieve quality in AUT.

● Analyze the business requirement● Find the test objective● Define a Test Strategy● Analyze the risks (Tools, Resources and Time)● Test Environment and Test Data preparation● Define Entry & Exit Criteria● Define a Traceability Matrix● Schedule and Timeline● Deliverable

6: What is Test Planning?

Page 9: Software Testing interview - Q&A and tips

As part of test designing a test lead or senior tester writes the testscenarios, Test Case and test procedures or test scripts areprepared.● Test Scenarios:

Test scenario meaning finding out that ‘what to be tested’ in any givenrequirement. This is to make sure that end 2 end functionality is covered.

● Test Cases:

To test the Test scenarios, test cases are written which contains the eachpossible function related to that requirement.

● Test scripts:

Are the phase where each it is written that how a test case will be executed. Soas part of this a tester writes the steps, activity and expected result for thatstep will be written.

7: What is Test Designing?

Page 10: Software Testing interview - Q&A and tips

“In order to execute test cases a detailed procedure

needs to be written where the writer will mention all

the steps to be performed and what should be the

expected result for each activity”

8: how you write Test scripts?

Page 11: Software Testing interview - Q&A and tips

“Entry criteria is the prerequisites that must needs to befulfilled before test team can begin the testing.”● A tester check for the critical functions before starting the full

testing process. It is known as performing Smoke / sanitytesting.

9: What is Test Entry & Exit Criteria?

“Exit criteria are a condition that must be fulfilled by testteam before they can conclude their testing activities.”● The test coverage should reach 100% of traceability matrix● All the test deliverable are shared and many other things.

Page 12: Software Testing interview - Q&A and tips

Test Environment is the dummy configuration of software / hardware where a tester executes their test cases.

Environments:

1: Development

2: QA

3: Staging

4: Product / Live

10: What is Test Environment?

Page 13: Software Testing interview - Q&A and tips

The Requirement Traceability Matrix or RTM is a document thatmaps the business requirement and test cases to trace thecoverage of testing at any given point of time and to ensure that norequirement is missed as part of the testing.

11: What is RTM (Requirement Traceability Matrix)?

Page 14: Software Testing interview - Q&A and tips

1: Make SOPs :

SOP stands for ‘Standard Operating Procedure’ which is document created to trainnew people that how to perform a task.

2: Upgrade Lesson Learnt Document:

Lesson learnt document is a document that is created and maintained todocument that what mistakes the team has done, or what gap the team had thatcaused any problem. Every team member must go through the document so thatthey are updated and they will not commit the same mistake again.

3: Skill enhancement:

Skill enhancement by self learning or participating in the corporate trainingsorganized by the company.

12: what do you do when you are done with testing and left with nothing to do?

Page 15: Software Testing interview - Q&A and tips

“SDLC stands for Software Development Life Cycle. SDLCdefines the standard phases involved throughout the softwaredevelopment.”

13: what is SDLC?

Deployment

Requirement Analysis

Project planning

Maintenance

Project Designing

Testing

Development

Page 16: Software Testing interview - Q&A and tips

● Waterfall Model● Spiral model● Prototype Model● Iterative and Incremental Model● V -Model● W-Model● Agile Mode

14: Can you name some SDLC models?

Page 17: Software Testing interview - Q&A and tips

“Waterfall model is a sequential development model where each phase ofSDLC is executed one after another in a linear way so it’s also called linearsequential model”

REQUIREMENT

DESIGN

DEVELOPMENT

TESTING

DEPLOYMENT

MAINTENANCE

15: what is waterfall model?

Page 18: Software Testing interview - Q&A and tips

“In V model of SDLC the real development phases and testingplans goes side by side as It can be interpreted as in a 'V’shape”

REQUIREMENT ANALYSIS

UAT (USER ACCEPTANCE TESTING)

HIGH LEVEL DESIGN SYSTEM TESTING

LOW LEVEL DESIGN or SPECIFICATION

INTEGRATION TESTING

CODING UNIT TESTING

16: Tell me something about V model?

Page 19: Software Testing interview - Q&A and tips

“Test Case designing technique is needed to get the maximumcoverage by using an optimal number of test cases.”

● Equivalence Class Partitioning● Boundary Value Analysis● Decision Table● Use Case Testing

17: Do you know what is Black Box Test Case Designing Techniques

Page 20: Software Testing interview - Q&A and tips

Scenario: Assume that there is an input field for age and it accepts the values from1-100. So, if we follow the ECP concept then:

Valid Class values from 1 -100

Invalid Class values below 1 (0- anything)

Invalid Class values above 100 (101- anything)

Class A : Any value from valid input data domain : 1-100Class B : Any value which is lower than lowest : 0,-1,-2..Class C : Any value which is higher than Highest : 0,-1,-2..Class D: Any alphanumeric : A1, B1, C1Class E: Any decimal values: 1.1,1.2,1.3

18: Do you know what is ECP (Equivalence Class Partitioning)

“ECP is a testing technique that divides the input test data into partitionsof equivalent classes and from each class minimum one data must be testedat least once.”

Page 21: Software Testing interview - Q&A and tips

“More application errors occur at the boundaries of input domain.‘Boundary value analysis’ testing technique is used to identify errorsat boundaries instead of finding errors in center of input domain.”

19: Do you know what is BVA (Boundary Value Analysis)

Scenario: Assume that there is an input field for age and it accepts the values from1-100. So, if we follow the ECP concept then:

Boundary Value: 1 & 100Invalid values for negative test cases: 0 & 101

Valid Boundary values 1 & 100

one lower than lowest = 0

one higher than highest = 101

Page 22: Software Testing interview - Q&A and tips

“Decision table technique is used in complex business scenarioswhere the input data will be determined based on some conditions.”

Example:

Conditions 1 2 3

Cash Yes No No

Coupon N/A Yes No

Actions

Order Placed Yes Yes No

20: Do you know what is Decision Table?

Page 23: Software Testing interview - Q&A and tips

● Use Cases capture the interactions between 'actors' and the'system'.

● A use case is a description of a particular use of the system byan actor. Each use case describes the interactions the actorhas with the system in order to achieve a specific task.

21: Do you know what is Use Case Testing

Page 24: Software Testing interview - Q&A and tips

22: Explain Testing Types?

Page 25: Software Testing interview - Q&A and tips

● Testing the code and internal structure comes under white boxtesting.

● Code’s internal structure, design and implementation is tested aspart of white box testing.

● It is also known as ‘glass box testing’ or ‘Open box testing’ or‘Structural Testing’.

23: Explain White Box Testing?

UNIT TESTING:

Once the developer develops their piece of segment, each individual component is

tested independently in this testing for their expected outcomes.

INTEGRATION TESTING:

When two independent units of codes merged then checking that whether they

functioning together is called integration testing.

Page 26: Software Testing interview - Q&A and tips

Black box testing is a testing type and as part of black boxtesting the functional behaviour of requirement is tested.

Also known as Behavioural Testing or close box testing.

24: Explain Black Box Testing?

Page 27: Software Testing interview - Q&A and tips

▶ FUNCTIONAL TEST

◦ Smoke/Sanity

◦ Feature testing

◦ Regression testing

◦ System Testing

◦ UAT

▶ NONFUNCTIONAL TEST

◦ Performance (Load/stress/soak)

◦ Compatibility testing

◦ Usability testing

◦ GUI testing

25: Explain Black Box Testing types?

Page 28: Software Testing interview - Q&A and tips

“Gray Box Testing is a combination of White box testing and blackbox testing. The idea is to find the :Improper structure and/or Improper usage of application”

● It is based on functional specification, UML Diagrams, DatabaseDiagrams or architectural view

● Grey-box tester handles can design complex test scenario moreintelligently

26: Explain Gray Box Testing?

Page 29: Software Testing interview - Q&A and tips

When two independent units of codes merged then checkingthat whether they functioning together is called integrationtesting.

27: what is Integration Testing?

Page 30: Software Testing interview - Q&A and tips

Stubs and drivers are the dummy piece of code called in to

create an integrated environment where some work is not

completed yet or not available for testing.

▶ Stubs are used during top down integration approach

▶ Drivers are used In bottom up integration approach

28: what is Stub and Drivers?

Page 31: Software Testing interview - Q&A and tips

29: what is the difference between Smoke and Sanity Testing?

Page 32: Software Testing interview - Q&A and tips

29: what is Functional and Regression Testing?

Page 33: Software Testing interview - Q&A and tips

Once a bug is fixed then checking the same functionality againto ensure that the bug fix is ok is called retesting. This testingis done to ensure that bug fix is working ok and based on thatthe bug status will be updated as fixed or reopened.

30: what is Retesting?

Page 34: Software Testing interview - Q&A and tips

When there is a requirement or an application to test but withno relevant document or details provided to tester the testerexplores the application and keep checking the features tofigure out the issues is known as Exploratory Testing.

31: what is Exploratory Testing?

Page 35: Software Testing interview - Q&A and tips

● System testing is testing the whole system in integratedenvironment with all necessary software and hardwares.

● Usually performed in E2E (End 2 End) environment

In complex business scenarios one system work withcollaboration of so many other systems, so testing yourapplication when it is integrated with all other applications iscalled system testing.

32: what is System Testing?

Page 36: Software Testing interview - Q&A and tips

● UAT stands for User Acceptance Testing● Where the product is evaluated as per the end user’s

requirement● Performed by the end users or stakeholders● Product is evaluated that whether it matches with business

requirement or not and whether to accept or reject theproduct

● Usually the last type of testing● UAT has 2 types Alpha testing and Beta Testing

33: what is User Acceptance Testing (UAT)?

Page 37: Software Testing interview - Q&A and tips

Alpha Testing Beta Testing

Performed by testers in testing environment Performed by real end users in live environment

Alpha Testing performed at developer's site Beta testing is performed at client location or end user of the product

Alpha testing comes before beta testing Beta testing is performed after alpha testing

Alpha testing involves both the white box and black box techniques

Beta Testing typically uses black box testing

Alpha testing is conducted within the organization and tested by representative group of end users

Beta testing is conducted by the end users

34: what is the difference between Alpha & Beta Testing?

Page 38: Software Testing interview - Q&A and tips

Performance testing is a test done to determine how a systemperforms in terms of speed, load and stability under a particularworkload.

Performance testing types are:▶ Load Testing▶ Stress Testing▶ Soak Testing

35: what is Performance Testing?

Page 39: Software Testing interview - Q&A and tips

A snippet of Browserstack.com responsive test page

36: what is Compatibility Testing?

Page 40: Software Testing interview - Q&A and tips

In general software testing language “During an application testing anydeviation in actual result and expected result is called a bug.”whereas Bug and Defects has slightly difference:

BUG:Bug is the general term used for all issues caught in testing environment.

DEFECT:A defect is a deviation from the requirements. Defect word is used by the businesspersons or stakeholder.

FAILURE:Any issue which is passed to live users and impacting the applications motive is

called a product failure.

37: what is Software Bug?Tell me the difference between Bug, Defect and a failure?

Page 41: Software Testing interview - Q&A and tips

Consider the below mentioned 10 point as a must to raise an effectivebug

1) Summary2) Description3) Component or Assigned to4) Steps to reproduce with Test Data and URLs5) Logs & screenshot6) Requirement reference7) Release Name /Build Number / Sprint name8) Environment9) Priority10)Severity

38: How to raise a Software Bug?Tell me the steps to raise a bug?

Page 42: Software Testing interview - Q&A and tips

● BugZilla● Mantis● Hp-QC or HP-ALM● Jira● Zoho

39: Name some of the main Bug Management Tools?

Page 43: Software Testing interview - Q&A and tips

PriorityThe impact of the bug or function on business level is called priority.Priorities are defined as : P1, P2 & P3

SeverityThe impact of the bug or function on Application level is called priority.Severities are defined as : Major, minor, critical, blocker

40: What is the difference between Priority & severity?Tell me the steps to raise a bug?

Page 44: Software Testing interview - Q&A and tips

41: What is the Bug Life Cycle?

Page 45: Software Testing interview - Q&A and tips

When a tester reports a valid bug but the same bug can not be reproducedby others due to any reason is called a non-reproducible bug.The reason could be :1) Test Environment2) Test locations3) Test Data4) System configuration5) System of server cache memory

42: What is a Non Reproducible bug?

Page 46: Software Testing interview - Q&A and tips

● Provide proper story and not just steps● Record a video or capture a screenshot for proof● Provide the system log, application log and server logs● Provide the time of execution● Provide the location of test execution

Try to reproduce the bug by clearing the system cache memoryTry to clear the server side cache (to clear the server side cache put?nocache=1 at the end of the URL and hit enter)

43: How to deal with a Non Reproducible bug?

Page 47: Software Testing interview - Q&A and tips

“Test Management tools are the tools required to manage whole testingactivity and reporting in an organized manner.”

1: Manage the build and versioning for test2: To manage the Test scenarios, Test Case and Test scripts3: To map the requirements and test scenarios, test cases4: To update the test case status while executing

5: To update the test cases with a defect6: To track the test progress7: To generate the test report8: To maintain the test history

44: What is a Test Management Tool?

Page 48: Software Testing interview - Q&A and tips

● HP ALM (Application lifecycle management) or HP-QC (Qualitycentre, is the older version of ALM)

● JIRA● q-Test● Testlink● Zephyr

45: Name some of the Test Management Tools?

Page 49: Software Testing interview - Q&A and tips

● A SDLC model to build an application fast in very short span of time

● Delivers workable modules after each release

● Development and Testing goes side by side

● A combination of iterative and incremental approach

46: Do you know what is Agile Model?

Page 50: Software Testing interview - Q&A and tips

1. Product

Backlog2. Sprint

Meeting

Sprint

1-4

weeks

4. Daily Scrum meets or

stand-ups

6. Sprint

Retrospective

5. Sprint Review (Demo

product)

3. Task

Burndown

Shippable

product

Agile – scrum lifecycle

(Source: wiki)

47: Explain the Agile Model lifecycle?

Page 51: Software Testing interview - Q&A and tips

● Automating the manual testing process by using any tool isautomation testing.

● Using a tool to execute the test cases is automation testing.● Test automation requires the significant amount of Money and

skills.● Significant amount of time can be saved by automation● Not everything can be automated

48: what is Automation Testing?

Page 52: Software Testing interview - Q&A and tips

Continuous Integration (CI) is a development practice that requiresdevelopers to integrate code into a shared repository several times aday. Each check-in is then verified by an automated test build,allowing teams to detect problems early.

By integrating regularly, you can detect errors quickly, and locatethem more easily.

49: Do you know what is Continuous Integration Testing?

Page 53: Software Testing interview - Q&A and tips

50: Continuous integration Testing (CIT)

Architecture - in Agile model