Q1. What do you mean by software testing?

Ans. Software Testing is a process used to find any existing bugs in the software with the help of executing a program or application. Testers use it to validate and verify software programs, applications, and products. Unlike other steps, testing is an ongoing stage in the software development life cycle (SDLC). Several test designs are used to verify the software codes.

  1. What is the purpose of risk-based testing?

Ans. Risk-based testing is done for projects and applications based on risks. It uses risk to prioritize and emphasize the appropriate tests during test execution.

  1. How is static software testing different from dynamic testing?

Ans. Below highlighted are the key differences between static and dynamic testing: 

Static Testing

Dynamic Testing

Helps in finding bugs without executing any code

Execution of code is required to find results of running tests

Done at the time of the verification process

Executed during the validation process

A cost-effective way of testing

Little expensive

Example – Reviewing, Walkthrough, Inspection

Example – Unit testing, system testing, integration testing

  1. What do you think, how much testing will be sufficient?

Ans. This is one of the most frequently asked questions in a software testing interview. There is no one answer to how much software testing is enough. You can frame your own answer to this question. As per BCS/ISTQB, which is a well-known Software Testing Foundation, it is not possible to test software for every possible situation. A tester should examine factors like quality, the risk involved, budget, and time constraints.

  1. What are the common problems in the software development process?

Ans.  Following are some common problems in the software development process:

  • Bad requirements
  • Unrealistic schedules
  • Inadequate testing
  • Adding new features
  • Poor communication
  1. What are the different types of functional testing?

Ans. Below are some types of functional testing:

  • Smoke testing
  • Sanity testing
  • Integration testing
  • Regression testing
  • Localization testing
  • User acceptance testing
  1. What are the different types of non-functional testing?

Ans. Below are some types of non-functional testing:

  • Performance testing Usability Testing
  • Security Testing
  • Installation testing
  • Recovery testing
  1. Define Testware.

Ans. Testware is a subset of software that encompasses artifacts produced in the test process to execute, plan, and design texts like expected results, scripts, databases, and inputs. It is used to explain the materials required in the test.

  1. Explain branch testing.

Ans. Branch testing is a testing method that ensures that each one of the possible branches from each decision point is executed at least once. It ensures that all reachable code is executed.

  1. What do you mean by the term QA (Quality Assurance)?

Ans. Quality assurance is used to boost customer confidence, the organization’s ability, and work efficiency. It is a methodology used in the development of products that make sure a certain level of quality.

QA monitors the process to be done for project development. It also tracks the results of the process to meet the expectations. It helps in preventing mistakes and defects in manufactured products and avoiding problems when delivering products or services to customers.

  1. Name some automation challenges that the SQA team faces while testing?

Ans.

  • The adaptability of the test case for automation
  • Mastering the automation tool
  • Reusability of automation script
  • Automating complex test cases
  1. What are the advantages of destructive testing?

Ans.

  • Determines the quality of welds
  • Entertains compliance with regulations
  • Verifies properties of a material
  • Helps you to reduce costs, failures, and accidents
  1. What are the various types of software testing?

Ans.  Following are various types of software testing:

  • Smoke testing
  • System testing
  • Unit testing
  • Functional testing
  • Performance testing
  • Shakeout testing
  • Alpha and Beta testing
  • Load testing and stress testing
  • White box and Black box testing
  • Integration testing and regression testing
  1. Define how QA is defined in the ISO 9000, Clause 3.2.11?

Ans. Quality assurance is explained as that aspect of quality management that deals with convincing the customers according to their set necessities for the software’s quality will be fulfilled.

  1. Explain what is MR and why we are using it in testing?

Ans. MR is termed as Modification Request also known as a Defect report. It is useful for testing for reporting errors/suggestions/problems in the software.

  1. What is the rule of a “Test Driven Development”?

Ans. Test-Driven Development focused on creating test cases before writing the actual code which indicates that you are writing the code for the tests before writing it for the application.

  1. What are the different types of test levels?

Ans. Following are the different types of test levels:

  • Integration testing
  • System testing
  • Acceptance testing
  • Unit/component/program/module testing
  1. What is the procedure to resolve issues during software testing?

Ans. We can resolve  issues during software testing by using:

  • Record: the defects are logged and recorded
  • Control: issue management process is identified.
  • Report: The defects are described to the development team
  1. What are the two parameters that determine the quality of testing?

Ans. You can identify the quality of testing by using:

  • Defect reject ratio: (No. of defects rejected/ total no. of defects raised) X 100
  • Defect leakage ratio: (No. of defect missed/total defects of software) X 100
  1. Mention the things you consider before choosing automation tools for the AUT?

Ans. Following are the things to be considered before choosing automation tools for the AUT:

  • Test data
  • Application size
  • Complexity level
  • Application stability
  • Technical Feasibility
  • Execution across environment
  • Re-usability of automated scripts
  1. Mention what are the debugging categories?

Ans. Following are the debugging categories:

  • Backtracking
  • Cause elimination
  • Program Slicing
  • Fault tree analysis
  • Brute force debugging
  1. Mention some of the risks that can occur in project failure?

Ans. Following are the few risks that can occur in project failure:

  • Strict timelines
  • Budget constraints
  • Improper testing environment
  • Insufficient resource for the project
  1. What information should a test plan include?

Ans. Information that a test plan include are:

  • Test Objective
  • Test Strategy
  • Resource Planning
  • Test Deliverables
  • Exit/Suspension Criteria
  1. Write a few common mistakes that lead to issues?

Ans. Following are some common mistakes that lead to issues:

  • Poor Scheduling
  • Underestimating
  • Ignoring the small problems
  • Not following the process
  • Improper resource allocation
  1. What are the steps you should follow after you detect any defect?

Ans. Following are the steps you should follow after you detect any defect:

  • Log the defect
  • Recreate the defect
  • Attach the screenshot
  1. What is an emulator?

Ans. An emulator is a computer program, device, or system that behaves like any other system, program, or device; taking the same type of input and producing the same output.

  1. What is a test log?

Ans. A test log is a chronological record of relevant details about the execution of test cases. It provides detailed information about the success of each test performed to validate the quality, performance, and functionality of the software.

  1. What is quality assurance?

Ans. It is a process-oriented activity that ensures the prevention of defects/bugs during the development process of software applications. The objective of measuring quality assurance is to avoid any hindrances once the software is ready.

  1. What is the difference between software testing and quality assurance?

Ans. The differences between software testing and quality assurance are: 

Software Testing

Quality Assurance

A process  for finding bugs in software

A process  for ensuring that the software is designed as per the required specifications

Product-oriented

Process-oriented

Focused more on corrections

Works on the preventive approach

Aims at controlling the quality

Aims at ensuring quality

  1. What do you mean by Quality Control?

Ans. Quality control is an activity based on product orientation. It is used to define the error in a particular software application. Quality Control is a systematic set of processes used to ensure the quality of software products or services. It aims to ensure that the software product meets the actual requirements by testing and reviewing its functional and non-functional requirements. 

  1. What do you mean by Positive and Negative Testing?

Ans. Positive testing is used to determine what a system is supposed to do and is it justifying the planned requirement.

Whereas negative testing helps in determining what the system should not perform, leading to finding the possible defects in the software.

  1. What is baseline testing?

Ans. Baseline testing is the process of running a set of tests to capture performance information. It is to compare the performance of software with its own previous version. Baseline testing aims to improve the performance and capabilities of the application.

  1. What is benchmark testing?

Ans. Benchmark testing is the process of testing a software’s performance with respect to industry guidelines (given by some other organization). It compares our application performance with other company’s application’s performance and helps to identify where the application stands compared to others. 

  1. What are the white box and black box testing?

Ans. White box testing is a software testing method that tests the internal structures or workings of an application. In this, the internal structure/ design/ implementation of the item being tested is known to the tester.

Black box (behavioral testing) is a method in which the internal structure/ design/ implementation of the item being tested is not known to the tester. It is the least time consuming and focuses on the functional test of the software. There are three types of Black Box Testing: 

  1. Functional Testing 
  2. Non-functional testing 
  3. Regression Testing
  1. Define some advantages and disadvantages of black-box testing.

Ans. Below are some advantages and disadvantages:

Advantages of Black Box Testing

Disadvantages of Black Box Testing

It simplifies the testing process.

It doesn’t highlight the reasons for errors.

Efficient for large code segments.

Coverage is limited as only a selected number of test scenarios are performed.

Even a non-tester person can work on this.

It is difficult to design test cases.

  1. What is random testing?

Ans. Random testing is a black-box software testing technique where programs are tested by generating random and independent inputs. The results of the output are compared with the software specifications to check whether the test output is pass or fail. Random testing is also used to avoid biased testing.

  1. What is the difference between a defect and a failure?

Ans. Defect refers to any deviation from the specifications mentioned in the product functional specification document. A defect results in a deviation in the actual and expected result of the application. 

Failure is when a product is completed and is delivered to the customers and the customer finds an issue in the product or software.

  1. How is error different from failure?

Ans. 

  • Error – When a program is unable to compile or run due to coding mistakes it is termed as an error.
  • Failure- If the end-user is unable to program due to any issue, it is termed as a failure.
  1. Define latent bugs and golden bugs.

Ans. A latent bug is a bug that is present in the system from previous iterations or releases. It is a low priority bug. It includes those bugs that remain dormant or unhidden.

A golden bug is a bug that appears in every iteration or release, affecting the major module. It is a high priority bug as it may affect the critical functionality of the system.

  1. What are the differences between Verification and Validation?

Ans. The differences between Verification and Validation are: 

Verification 

Validation

Verification is the process of checking that the software meets the specification or not.

Validation is the process of checking whether the software meets the customer’s expectations and requirements or not.

It involves checking documents, design, codes, and programs.

It is concerned with testing and validating the actual product.

Static testing.

Dynamic testing.

Verification methods include reviews, inspections, and desk-checking.

Validation methods include Black Box Testing, White Box Testing.

  1. What are alpha and beta testing?

Ans. Alpha testing is conducted to identify bugs before releasing the product to real users. It is performed within the organization and tested by a representative group of end-users at the developer’s side and sometimes by an independent team of testing. It involves both the white box and black box testing.

Beta testing is conducted by the end-users who are not part of the organization, and they are not programmers, software engineers, or testers. It is done to check reliability, security, and robustness. It generally uses black-box testing.

  1. What is concurrency testing?

Ans. Concurrency Testing is defined as a testing technique to detect the defects in an application when multiple users are logged in.

It helps to identify the problems in system parameters, such as response time, throughput, deadlocks, and more.

  1. What are the phases of a formal review?

Ans. There are six phases of a formal review: 

  1. Planning
  2. Kick-Off
  3. Preparation
  4. Review Meeting
  5. Rework
  6. Follow-Up
  1. What is the traceability matrix?

Ans. Traceability matrix is the document with the help of which the relationship between test cases and requirement specifications is shown. It helps to ensure transparency and completeness of the software testing products.

  1. When is the decision testing table used?

Ans. A Decision Table is a tabular representation of inputs versus rules/cases/test conditions. It is used for complex software testing and requirements management. Decision table testing is used for testing systems for which the specification takes the form of rules or cause-effect combinations.

  1. What is the purpose of the test design technique?

Ans. The purpose of the test design technique is to identify test conditions and test cases. A test design technique helps to select a set of tests from the total number of all possible tests for a given system. 

  1. Name some tools that are involved in the automation of regression tests?

Ans. Below are some tools that help in the automation of regression test:

  • Data tester
  • Boundary tester
  • Capture/Playback
  • Output comparator
  1. Name the technique used in the script that has no frame id and frame name?

Ans. For such scripts, we can use the technique frame by index.

  1. Define RTM.

Ans. Requirements Traceability Matrix or RTM or traceability matrix, or Cross-reference matrix is the term used check is the testing requirements are satisfied.

  1. What is Integration testing?

Ans. Integration testing, which is also known as I&T, String Testing, or Thread Testing, is a process of testing through which several software modules are logically integrated as a group and each group is tested. The prominent role of integration testing is to check the data communication between different software modules.

  1. What is a Bottom-Up Testing?

Ans. Bottom-up testing is a type of testing approach where the lowest level components are tested first with the higher modules with the help of drivers. This approach is highly convenient for fault localization and is time-efficient when compared to the big bang testing approach.

  1. What is Top-Down Integration Testing?

Ans. In this method, testing starts from the top and move to the bottom by seeking help from stubs. It follows the software system’s control flow. In top-down testing, fault localization is easy and the possibility of obtaining an early prototype is high.

It works on the concept of priority testing and resolves major design defects on the highest priority. The only disadvantage of this approach is that it requires too many stubs and gives the least importance to modules that are present at the lower level.

  1. What do you mean by crowd testing or CrowdSource?

Ans. In this type of testing, the software product is shared with expert software testers for finding bugs and defects. Nowadays it is a modern way of testing.

  1. What do you mean by CRUD testing?

Ans. CRUD is a black box testing of the database functionality. It stands for Create, Read, Update, and Delete, which are the four major and basic functions of persistent storage.

  • Create – INSERT an entry in the database
  • Read – SELECT the entry from the database and view it.
  • Update – UPDATE the entry completely or partially.
  • Delete – DELETE the entry.
  1. Define the cause-effect graph.

Ans. A cause-effect graph comes under the black box testing technique and describes a relationship between a given outcome and all the aspects that affect the outcome. Cause-effect graph testing reduces the time of test execution and cost.

The cause-Effect graph technique is based on a collection of requirements and is used to determine minimum possible test cases that can cover a maximum test area of the software.

  1. What kind of test do you do on the web-based application?

Ans. Here are the tests we do on the web-based application:

  • Usability testing
  • Load and stress testing
  • Security testing
  • Functionality testing
  • Configuration testing
  1. What is volume testing?

Ans. Also known as flood testing, Volume testing is a type of software testing, which is done to identify whether the system can handle a large amount of data. In Volume testing, the software is subjected to a huge volume of data and the system performance is analyzed by increasing the volume of data in the database. It helps in identifying the impact on response time and system behavior.

  1. Explain what is a Test Metric in software testing and what information does it consist of?

Ans. Test Metric is used as the standard of test measurement in software testing. They are the statistics describing the structure or content of testing. It consists of information like:

  • Test run
  • Total test
  • Test failed
  • Test passed
  • Tests deferred
  • Test passed the first time
  1. Explain what is Entry and Exit criteria?

Ans. Entry Criteria- It is defined as the process which requires to be run when the testing begins. It involves:

  • Test plans
  • Test cases
  • Use cases
  • Software Requirement Specification (SRS)
  • Functional Requirement Specification (FRS)

Exit Criteria- It is used when a product is completely testing and when it is ready to be released. It involves:

  • Metrics
  • Defect Analysis Report
  • Test Summary Reports
  1. Mention what two levels are commonly used under Quality Certification?

Ans.  Following are the two levels used under Quality Certification:

  • Optimization
  • Repeatable sequences
  1. What is the possible way to deal with un-reproducible bugs?

Ans. To deal with un-reproducible bugs, a tester can follow the given steps:

  • Applying test steps that are as close to the bug description as possible.
  • Processing the environment of that test.
  • Analyzing and calculating the results created by the test execution.
  • Keeping the time and resource constraints under examination.
  1. Which are some of the popular crowdsource testing services?

Ans. Below is the list:

  • test IO
  • Global App Testing
  • Cobalt
  • Crowdprint
  • Testbirds
  1. Are there more defects in the design phase or the coding phase?

Ans. The design phase is more error-prone than the coding phase. The most common errors that occur during the design phase include: 

  • the product does not meet the complete requirements of the customer. 
  • Bad architecture makes the next phase, execution, more prone to defects. 

On average, 60 percent of defects occur during design while 40 percent occur during the coding phase. 

  1. What is the difference between Retesting and Regression testing?

Ans. The differences between Retesting and Regression Testing are: 

Retesting

Regression testing

Retesting is a type of testing performed to check the test cases that were unsuccessful in the final execution are successfully passed after the defects are repaired.

Regression testing is a type of software testing executed to check whether a code change has not unfavorably disturbed the current features and functions of an application.

It is specific and is performed on the bug which is fixed

It is not always specific to any defect fix it is performed when any bug is fixed.

Retesting is concerned with executing those test cases that are failed earlier

It focuses on those executing test cases that were passed in earlier builds.

  1. What are bug releases and bug leakage?

Ans. Bug Leakage occurs when a bug is detected and that should have been detected in the previous versions/builds of the application. It is when a customer or end-user discovers a bug that can be detected by the testing team.

bug release is when a particular version of the software is released with a set of known bug(s). In bug release, the build is handed to the testing team knowing that a defect is present in the release. The priority and severity of the bug are low. It is done when the customer wants the application on the time. These bugs are mentioned in the Release Notes handed to the customer for future improvement.

  1. Which contents are available in a test plan?

Ans. The test plan document is acquired from the Product description, SRS, or Use Case Document. It defines the testing plan and incorporates activities that help deliver quality software. Generally in a test plan, a testing manager should include things like:

  • Identifiers
  • References
  • Introduction
  • Test functions
  • Pass and fail criteria
  • Test deliverables
  • Planned risks and risk probabilities
  • Supervision criteria
  • Detailed schedule
  • Approvals
  1. Define some of the common software testing approaches.

Ans. Some of the common testing approaches are:

Common Software Testing Approaches

Black box testing

For a given input, the output is tested

White-box testing

Testing of source code is done

Acceptance testing

Expectations vs reality testing

Automated testing

The test is done with recurring scripts

Regression testing

The test verifies the existing working of a system and compares with the way it used to work previously

Functional testing

Helpful in testing functionalities

Exploratory testing

The test is done within certain areas only and no specified test cases are done

  1. Name the steps involved in the process of the bug cycle?

Ans. Below is the bug life cycle:

  • Bug investigation
  • Bug assignment
  • Bug fixing
  • Bug retesting
  • Bug closing and reopening
  1. What are the three types of defects in Software Testing?

Ans. The three types of defects in Software Testing are: 

  1. Minor Defects – These defects are usually small and insignificant and don’t affect the function of the item. In this, the product deviates slightly from the customer’s specifications. Typically, minor defects are not even noticed by customers.
  2. Major Defects – These are more serious than minor defects. Major defects can adversely affect the function, performance, or appearance of a product. These defects are very noticeable.
  3. Critical Defects – It is the most serious of the three defect types. It either makes an item completely unusable or could even harm the user or someone in the vicinity of the product.
  1. What is the Rapid Application Development (RAD) model?

Ans. RAD is a software development methodology that uses minimal planning in favor of rapid prototyping. In the RAD model, the functional modules are developed in parallel as prototypes and are integrated to make the complete product for faster product delivery. RAD follows the following four main phases: 

  1. What are the two types of recording methods?

Ans. The two types of recording methods are: 

Context-sensitive – It is the default mode of recording that recognizes objects in the application regardless of their location on the screen. The objects are recorded in the application and the operations performed on them. 

Analog – This method is used for recording operations that cannot be recorded at the level of an object. 

  1. When planning to execute integration testing what guidelines you consider?

Ans. You can frame your answer like this: 

I keep in mind things like:

  • Formulate an effective test strategy and accordingly prepare the test cases.
  • Identify modules that are on high priority as per the application’s architecture design and test these modules first.
  • Verify each module’s interface details.
  • Keep mock data ready.
  1. Define API testing.

Ans. Application programming interface or API testing has predefined sets of routines, protocols, and tools which guide how one component should interact with any other component. Below are some of the test which is performed on API:

  • Return value as per the input condition
  • Verify what APIs return
  • Verify what API trigger
  • Verify whether API updates the data structure
  1. What do you mean by CAST?

Ans. CAST stands for Computer-aided software testing which is an automated process, technique, and tool used by a computer to test software apps and programs. CAST’s performance is equivalent to thousands of users working at a time as the CAST-based tools evaluate the code using the testing tools and built-in software testing solutions.

  1. Which groups are involved in test closure activities?

Ans. When the testing process ends, test closure activities are performed including tasks like test generation. It involves 4 different groups which are mentioned below:

  • Check the completion of tests
  • Hand over test objects
  • Share learning experience
  • Archive essential reports
  1. Which are the most popular integration testing tools?

Ans. Below is the list of integration testing tools:

  • VectorCAST/C++
  • Citrus
  • LDRA
  • SITA
  • Relational Integration Tester
  • Steam
  1. Define the steps to writing a software testing weekly reports.

Ans. There are a few aspects that you must cover in weekly reports:

Talk about the issues you have found in the solution. The below format could be of help:

  • Project Name:
  • Description of Issue:
  • Possible Solutions:
  • Resources Required to Resolve(if any):
  • Resolution Date:

Set Priorities for the coming week. The helpful format can be:

  • Project Name:
  • Completed Work:
  • Scheduled Tasks:
  • Completion Date:
  • Reason for extending (if any):

Status Report:

  • Active defects:
  • Resolved Bugs:
  • Test Cases:
  1. Define Defect Triage?

Ans. This is a way to prioritize defects or bugs based on factors like the risk involved, defect severity, and frequency of occurrence. Triage means the degree of urgency and the role of a tester is to prioritize and resolve the bug based on its priority.

  1. What is the importance of defect triage in software testing?

Ans. It is essential for bringing in the agile project management approach and as per the project schedule, if a tester has defined priority, the project delivery date will not get affected.

  1. Which are some tools that you use for automation testing?

Ans. Below is the list of best automation tools that are helpful for every software tester:

  • mabl
  • Ranorex
  • TestCraft
  • Squish
  • LeapWork
  • TestArchitect
  • Percy
  1. What is the Waterfall Model in the software development lifecycle (SDLC)?

Ans. Waterfall Model is a sequential model that divides software development into pre-defined phases. It is the initial approach that works on the concept of finishing each phase of testing before commencing the next phase. This process avoids overlapping between any phases as the output of the current phase will be the input of the next phase.

 

  1. What do you mean by V-Model in software testing?

Ans. This is an add-on/extension version of the waterfall model. It has an additional feature where there is a specific corresponding testing phase for SDLC. It is an SDLC model where the execution of processes happens sequentially in a V-shape.

  1. In software testing, what do you mean by embedded testing?

Ans. It is a system in which both the software and hardware devices joined to ease the testing of embedded software. The following activities are performed in embedded testing:

  • Some inputs are provided
  • A division of software is executed
  • Software state is observed to check the quality
  1. What are the different types of embedded software testing?

Ans. Below are the types:

  • Software unit testing
  • System unit testing
  • Software Integration testing
  • System integration testing
  • System validation testing
  1. State difference between Verification and Validation Function?

Ans. Both verification and validation functions are different and below are some of the major differences in verification and validation:

Verification Function

Validation Function

It checks programs, documents, and designs

Tests and validates software

It uses methods like reviews, desk-checking, walkthroughs, and inspection

It is used for non-functional testing, black box testing, white box testing

  1. How will you involve a novice tester in your project workflow?

Ans. You can frame your own answer for this software testing interview question using the following: 

If someone is passionate about testing and holds the right knowledge and skills testing, it is easy to involve such a candidate in the existing project workflow. I will start with the below steps:

  • Brief him about the project
  • Involve in testing activities
  • Communicate the progress
  1. How do you enhance the work efficiency of your test team?

Ans. Increasing the efficiency of the test team requires improvement on a few things like:

  • Good management
  • Testing strategy
  • Research about the product and project
  • Deep understanding of risk and how to eliminate it
  1. What do you mean by code coverage?

Ans. Code coverage is a form of white box testing which is used to discover the areas of the program that are not implemented by set cases. The main task of code coverage is to find detailed information about the running program.

  1. Which methods are used in code coverage?

Ans. Some of the methods used in code coverage are:

  • Statement coverage
  • Decision coverage
  • Branch coverage
  • Toggle coverage
  1. What is covered under statement coverage?

Ans. Below things are covered under statement coverage:

  • Unused Statements
  • Dead Code
  • Unused Branches
  • Missing Statements
  1. What is the formula applied for statement coverage?

Ans. The below formula is used for statement coverage:

Statement Coverage = Number of executed statements/total number of statements * 100

  1. What is the formula applied for decision coverage?

Ans. Formula:

Decision Coverage = Number of exercised decision outcomes/total number decision outcomes

  1. What is the formula applied for branch coverage?

Ans. Formula:

Branch Coverage = Number of executed branches/ total number branches

  1. What is the formula for condition coverage?

Ans.

Condition coverage =number of executed operands/total number operands

  1. How is Code coverage different from Functional coverage?

Ans. The key difference between code coverage and functional coverage are:

Code Coverage

Functional Coverage

It validates the functionality of the source code

It tests the functionality of design

Works on different design specifications

It works on a single design specification

  1. What do you mean by software build?

Ans. When software is designed, there are multiple source code files, and creating an executable program is a difficult task. This is where software build works well. A software build helps in generating executable programs in software engineering.

  1. How is sanity testing different from smoke testing?

Ans. Below is the difference between sanity and smoke testing:

Smoke Testing

Sanity Testing

It checks if the core functionalities of the software are functioning fine

Checks if all bugs are resolved and fixed

It verifies the stability of the system

Verifies the rationality of the system

Documented

Not documented

Acceptance testing

Regression testing

Complete focus on end to end system

Focused on a specific part

Done by both developers and testers

Done by testers

  1. What is not suitable for automation testing?

Ans. In the below cases automation testing will not be of much help:

  • When test changes are regular
  • When test changes are conducted just once
  • When planning for a random test
  1. What are the different kinds of frameworks in automation testing?

Ans. Below is the list:

  • Keyword-driven
  • Data-driven
  • Hybrid automation
  • Modular automation
  1. Define data-driven testing.

Ans. In such a testing case, the inputs are reported from files like Excel, CSV, ODBC which are used for performing automated testing.

  1. Which software performance testing tools you use?

Ans. To answer this question, you can tell the names of the tools that you use. Below is the list of some of the top software performance tools:

  • WebLoad
  • Apache Jmeter
  • HP Load Runner
  • Load Complete
  • WAPT (web application performance tool)
  • Open STA (System Testing Architecture)
  1. What do you mean by protocol testing?

Ans. It is a means to check communication protocols in various domains like:

  • Switching
  • Wireless
  • VoIP
  • Routing
  • Switching
  1. What do you mean by L2 and L3?

Ans. OSI or the open system interconnection model has 7 layers, out of which L2 and L3 i.e. Layer 2 and Layer 3 play a significant role.

Layer 2: It is referred to as ‘Data Link’ (example – Ethernet and token ring)

Layer 3: It is referred to as ‘Network’ (example – IP address)

  1. Name some tools for protocol testing.

Ans. Below is the list of protocol testing tools:

  • TTCN
  • Wireshark
  • Python
  • Netperf
  • Scapy
  1. Is it possible to skip a method in TestNG?

Ans. If the enabled parameter in test annotation is selected as false, we can skip a method in TestNG.

Code:

@Test(enabled = false)

  1. Define boundary value analysis.

Ans. Boundary value analysis is a test case design strategy in Black-Box Testing. It tests valid and invalid partitions’ boundary values. 

  1. What do you mean by defect age?

Ans. It is the time between defect detection and defect closure. It can be measured in terms of Time or Phases. The defect age should be as low as possible at least for the HotFix issues. 

Defect Age Formula: 

Defect Age in Time = Defect Fix Date (OR Current Date) – Defect Detection Date

Defect Age in Phase = Defect Detection Phase – Defect Injection Phase

  1. What do you mean by the pesticide paradox?

Ans. When a tester uses the same test cases, repeatedly it is possible that after some interval, the test case will not be able to catch new bugs. Thus in the pesticide paradox, the tester frequently updates the test case to maintain efficiency.

  1. What do you mean by a test stub?

Ans. The test stub is integrated with an application as a dummy program. The objective is to complete the functionality of the application. Unlike the test driver, a test stub uses a top-down approach.

  1. Apart from white, black, and grey-box testing, name some of the different color box testings.

Ans. Color box or rainbow testing types are:

  • Glass box testing
  • Red box scripts
  • Yellow box testing
  • Green box checking
  1. Mention HTTP response codes that are returned by the server.

Ans. HTTP response codes are mentioned as below:

  • 2xx – It means ‘Success’
  • 3xx-  It  means ‘Redirection’
  • 4xx-  It  means ‘Application error’
  • 5xx-  It  means ‘Server error’
  1. What are the different types of environments available on the Web?

Ans. The different types of environment available on the Web are:

  • Internet (Wide Area Network)
  • Intranet (Local Network)
  • Extranet(Private network over the internet)
  1. Which type of functional testing investigates the functions related to the detection of threats, such as viruses from malicious outsiders?

Ans. Security testing investigates the functions related to the detection of threats, such as viruses from malicious outsiders. 

It identifies the vulnerabilities of the system and determines that its data and resources are protected from possible intruders. It uncovers the flaws in the security mechanisms of an information system that protect data and helps in maintaining functionality.

  1. What are the types of maintenance in software testing?

Ans. There are four types of maintenance in software testing:

  1. Corrective maintenance – It focuses on the errors and faults within software applications that could impact various parts of the software, like the design, logic, and code. It is used to rectify some bugs observed while the system is in use, or even to enhance the system performance.
  2. Adaptive maintenance – It is used when the environment of the software changes, i.e. if the customer wants to run it on a new operating system or change the hardware or software. 
  3. Perfective maintenance – It emphasizes the evolution of requirements and features that exist in the system.
  4. Preventive maintenance – It includes modifications and updations to prevent future problems. This helps to make changes to the software so that it can work for a longer period.
  1. Define Agile Testing. What are its advantages?

Ans. Agile testing is a software testing practice that follows the principles of agile software development. Unlike the Waterfall method, Agile Testing can begin at the start of the project with continuous integration between development and testing. It is an iterative development methodology. There are several advantages of Agile Testing:

  1. It Saves time and money
  2. Requires documentation
  3. Regular feedback from the end-user

The following image describes the Agile Development Process (Behavior Driven Development):

  1. What is Cyclomatic Complexity?

Ans. Cyclomatic complexity is used to measure the complexity of the software using the control flow graph of the software. The following are the steps to calculate cyclomatic complexity and test cases design are: 

  • Construct graph with nodes and edges from code
  • Identify independent paths
  • Cyclomatic complexity calculation
  • Design of test cases
  1. What are the different approaches and strategies used in Integration Testing?

Ans. Below are the two approaches used in integration testing:

  • Big Bang Approach

In the big bang integration testing approach, separate components are integrated together and tested at once. This type of testing is convenient when the systems are small and manageable but in this approach, fault localization is a challenging task.

  • Incremental Approach

This is an advanced approach where two or more modules are joined by considering a logical relationship between them. Once a set of the module is tested, more modules are added in the loop until all the modules are assembled and tested. This type of testing is conducted via two approaches – bottom-up and top-down testing.

  1. What is the difference between functional testing and non-functional testing?

Ans. Below are some major differences between both:

Functional testing

Non-functional testing

It tests the overall functionality and behavior of a software

It checks the software’s quality which is to be tested.

This type of testing is conducted before the non-functional testing

It is only performed after the functional testing is finished

It is used to check software as per the client’s requirement

Checks the software as per the client’s expectations

Behavior-oriented

Performance-oriented

Manual ways are used for testing

It is difficult to conduct via manual testing hence requires automation tools

Software is tested in the real environment

Software is tested based on factors like time, accuracy, durability, stability, etc.

  1. How is unit testing different from integration and functional testing?

Ans. The below table gives a clear difference between all three:

Basis

Unit Testing

Integration Testing

Functional Testing

Purpose

It individually tests every smallest unit and module

Tests a combination of two or more units or modules

It is used to test the behavior of software based on the client’s requirements

Complexity

Not complex

Slightly complex

Complex

Technique

White-box testing

White box and black box Testing

Black-box Testing

Test

It highlights frequently occurring issues in the unit

Highlights issues occurring during module integration

Finds issues that affect the functionality of the software

  1. State standalone application vs client-server application vs web application.

Ans.

Standalone Application

Client-server Application

Web Application

One-tier architecture

Two-tier architecture

Three-tier architecture

The system layer consists of presentation, business, and database

Client system layer consists of presentation and business

The presentation layer is in the client system, business in the application server, database layer in a database server

Works in one system

Works in intranet

It works in intranet and internet

  1. Mention a few subclasses of HTTP response objects?

Ans. Flush, tell, Write,  etc are few HTTP response objects.

The sub-classes of HTTP response are:

  • HttpResponseRedirect
  • HttpResponseBadRequest
  • HttpResponseNotfound
  • HttpResponsePermanentRedirect
  1. Explain DFD (Data Flow Diagram)?

Ans. When data flows through a data system is graphically depicted then it is known as Data Flow Diagram. It is a traditional visual representation of the information that flows within a system. A DFD shows how data enters and leaves the system, what changes the information, and where data is stored. It helps us to visualize the major steps and data involved in software-system processes.

There are 3 Levels of DFD: 

  • 0-level DFD
  • 1-level DFD:
  • 2-level DFD:
  1. What do you mean by the Workbench concept in software testing methodology?

Ans. Workbench methods aim to examine and verify the structure of the testing performance. It is often referred to as phases, steps, and tasks as it is a popular way of documenting the below-mentioned activities:

  • Input
  • Execute
  • Check
  • Production Output
  • Rework
  1. What are the different Workbench Phases?

Ans. Below is the list of different Workbench phases:

  • Requirement phase
  • Execution phase
  • Testing phase
  • Distribution phase
  • Maintenance phase
  • Design phase
  1. What is the procedure to launch the browser using WebDriver?

Ans. Syntax:

WebDriver driver = new FirefoxDriver();

WebDriver driver = new ChromeDriver();

WebDriver driver = new InternetExplorerDriver();

  1. Define Defect Cascading.

Ans. If one defect is caused due to the occurrence of another defect (probably an unattained defect), it is termed as defect cascading. It happens when a defect is present at any stage but is not identified. This defect moves to other phases without getting noticed and invokes other defects. This increases the number of defects.

Example: 

Let us assume that there is an app to calculate the employee’s monthly salary. The module required for calculating salaries has an unidentified defect. As result, it miscalculates the salary. 

This prompts the database to convey wrong salary numbers that further reflects in the annual salary calculations, tax calculations, and balance sheet.

 

By bpci