We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5
i. Define Software Testing: iv.
Explain the various fields of a basic test case
Software testing is the process of evaluating a software template in Excel that can be used for software testing: application or system to detect differences between The fields of a basic test case template in Excel typically expected and actual results. It ensures that the software include Test Case ID, Description, Preconditions, Steps to meets specified requirements and functions correctly. Execute, Expected Results, Actual Results, Pass/Fail, and ii. Define Error: Comments. These fields capture essential information An error is a mistake made by a human that leads to about each test case and its execution. incorrect behaviour or results in a software application. v. Which are different bug tracking tools? Explain any iii. Define Defect/Fault: two: A defect or fault is an imperfection or flaw in a software Different bug tracking tools include Jira, Bugzilla, Mantis, product that can cause it to fail to perform its intended and Redmine. Jira is a widely used tool known for its function. flexibility and integration capabilities, while Bugzilla is an iv. Define Bug: open-source tool known for its simplicity and A bug is an informal term used to describe a defect or robustness. fault in a software application that causes it to behave vi. How to identify errors, bugs in the given application: unexpectedly or produce incorrect results. Errors and bugs can be identified in a given application v. What is Test Case? through various methods such as manual testing, A test case is a set of conditions or variables under automated testing, code reviews, and user feedback. which a tester will determine whether a software Testers systematically execute test cases, analyse application or system is working correctly. results, and report any discrepancies between expected vi. What is Test Suit? and actual behaviour. A test suite is a collection of test cases that are grouped vii. Write test cases for Employee Credential Checking: together to achieve specific testing objectives, such as Test Case 1: Verify that the employee login page displays testing a particular feature or functionality of a software correctly. application. Test Case 2: Verify that valid employee credentials allow vii. What is Test Bed? access to the system. A test bed is a configuration of hardware and software Test Case 3: Verify that invalid employee credentials used for testing purposes. It provides an environment result in an error message. where software can be tested under various conditions Test Case 4: Verify that the system locks the account to evaluate its performance and behaviour. after multiple failed login attempts. viii. What is the purpose of Entry and Exit Criteria? Test Case 5: Verify that the password reset functionality Entry criteria define the conditions that must be met works as expected. before testing can begin, while exit criteria specify the i. What is a defect? conditions that must be met before testing can be A defect is an imperfection or flaw in a software product concluded. These criteria ensure that testing is that can cause it to fail to perform its intended function. conducted effectively and efficiently. ii. What is a defect report? i. What is Entry Criteria? Explain with an example: A defect report is a document that describes a defect Entry criteria are the conditions that must be satisfied found during testing, including details such as the before testing can commence. For example, entry defect's severity, priority, steps to reproduce, and criteria for testing a web application may include the potential impact on the software. completion of development, installation of necessary i. Explain Defect Bug Life Cycle in detail: software, and availability of test data. The defect bug life cycle consists of stages such as ii. What is Exit Criteria? Explain with an example: New, Assigned, Open, Fixed, Retest, Verified, Closed, and Exit criteria are the conditions that must be met to Reopened. When a defect is detected, it is reported as conclude testing. For instance, exit criteria for the same New, then assigned to a developer, who fixes it. After web application might involve achieving a certain level of fixing, it is marked as Fixed, then retested. If the fix is test coverage, passing all critical test cases, and successful, it is Verified and Closed; otherwise, it is obtaining approval from stakeholders. Reopened. iii. How to design test cases in MS Excel? Describe with ii. Explain the defect report template: an example: A defect report template typically includes fields such as Test cases can be designed in MS Excel by creating a Defect ID, Summary, Description, Steps to Reproduce, spreadsheet with columns for test case ID, description, Severity, Priority, Status, Assigned To, Reported By, and steps to execute, expected results, actual results, and Date Reported. status. Each row represents a unique test case, and iii. Explain the types of defects: testers can input relevant information into the Types of defects include Functional defects, corresponding columns. Performance defects, Compatibility defects, Usability defects, and Security defects. iv. Explain the classification of defects:Defects can be Selenium installation steps vary depending on the classified based on various criteria such as Severity programming language and tools being used. Generally, (Critical, Major, Minor), Priority (High, Medium, Low), and it involves downloading Selenium WebDriver and Type (Functional, Performance, etc.). necessary drivers (e.g., ChromeDriver for Google v. How to write a defect report? Chrome), configuring the development environment, and To write a defect report, include details such as Defect setting up dependencies. ID, Summary, Description, Steps to Reproduce, Severity, v. Write the names of test automation frameworks: Priority, Status, Assigned To, Reported By, and Date Some popular test automation frameworks include: Reported. Clearly describe the issue and provide any 1. Selenium WebDriver relevant screenshots or logs. 2. Robot Framework vi. Prepare the defect/bug report prepared in excel for an 3. TestNG online purchase: 4. Cucumber An example of a defect report in Excel for an online Defect Life Cycle: purchase might include columns for Defect ID, Summary, The defect life cycle is a systematic process that Description, Steps to Reproduce, Severity, Priority, Status, describes the stages through which a software defect Assigned To, Reported By, and Date Reported. Each row evolves from its identification to its resolution. It would represent a unique defect found during testing. provides a structured framework for managing Unit 5 - Testing Tools defects effectively throughout the software development i. Define manual testing: and testing process. Here are the typical stages of the Manual testing is the process of executing test cases defect life cycle: manually without the use of automation tools. 1. New: The defect is identified and reported by a tester ii. Define automated testing: or other stakeholders. At this stage, the defect is Automated testing is the process of executing test cases assigned a unique identifier and enters the defect using automation tools to perform repetitive tasks and tracking system. validate software functionality. 2. Open: The defect is acknowledged by the development iii. Limitations of manual testing: team and is under investigation. The development team Limitations of manual testing include human error, time- analyzes the defect to understand its root cause, impact, consuming nature, limited test coverage, and difficulty in and severity. executing repetitive tests. 3. Assigned: The defect is assigned to a developer for iv. Benefits of Automated testing: further investigation and resolution. The developer Benefits of automated testing include improved reviews the defect report, reproduces the issue if efficiency, repeatability, scalability, broader test coverage, necessary, and begins working on a fix. and faster feedback. 4. In Progress: The developer actively works on fixing the i. Give a comparison of manual and automated testing: defect by modifying the code, configuration, or other Manual testing requires human intervention for test relevant components of the software. execution, while automated testing uses tools to execute 5. Fixed: The developer completes the fix for the defect, tests automatically. Manual testing is time-consuming and the modified code is ready for testing. The fix is and error-prone, whereas automated testing is faster and verified to ensure that it addresses the reported more reliable. issue and does not introduce any new defects. ii. Explain different types of testing tools. Explain four of 6. Verified: The fixed defect is retested by the testing them in short: team to confirm that it has been successfully resolved. If Different types of testing tools include: the defect is no longer reproducible and the fix effective, 1. Selenium: A popular open-source tool for automating the defect is marked as verified. web browsers. 7. Closed: The defect is considered resolved and closed. 2. JMeter: An Apache tool for performance testing of A resolution status is assigned to indicate the outcome web applications. of the defect (e.g., fixed, not reproducible, by 3. Postman: A tool for API testing and development. design). The defect is no longer actively tracked, but it 4. Appium: An open-source tool for automating mobile remains documented for reference and historical applications. purposes. iii. How to make use of automation tools? 8. Reopened: In some cases, a previously closed defect To make use of automation tools, testers need to select may be reopened if the reported issue persists or appropriate tools based on project requirements, learn resurfaces after the fix. The defect returns to the open how to use them effectively through training or status for further investigation and resolution. documentation, and implement automation scripts to Severity Defect with Its Types: execute test cases automatically. Severity in defect management refers to the impact a iv. Write selenium installation steps: defect has on the functionality of the software and the urgency with which it needs to be fixed.Severity is - Mocking and Stubbing: Unit tests may use mocking or typically categorized into several levels to prioritize the stubbing techniques to simulate the behaviour of resolution of defects. Here are common types of external dependencies or collaborators. Mock severity defects: objects or stubs are used to replace real dependencies 1. Critical: Critical defects are the most severe and have during testing, allowing developers to control the a significant impact on the functionality of the software. environment and isolate the unit being tested. These defects typically result in system crashes, data -Load Testing: Load testing is a type of performance corruption, or complete loss of functionality, rendering testing that evaluates the behaviour of a software the software unusable. Critical defects require application under expected load conditions. immediate attention and resolution before the software Define priority defect and its different levels. can be released or deployed. Priority defect refers to the level of urgency or 2. Major: Major defects have a significant impact on the importance assigned to a defect based on its impact on functionality or usability of the software but do not the software system and the project timeline. Different necessarily render it completely unusable. These defects levels of priority for defects include: may cause essential features to malfunction, resulting in - High Priority: Defects that severely impact the incorrect behavior or significant inconvenience to users. functionality of the software, prevent essential features Major defects require urgent attention and should be from functioning correctly, or pose a significant fixed before releasing the software to production. risk to the project's success. 3. Minor: Minor defects have a minor impact on the - Medium Priority: Defects that affect non-critical functionality or usability of the software and typically features or functionality, may cause inconvenience to result in cosmetic issues or minor inconveniences users, or have a moderate impact on the project timeline. for users. These defects do not affect the core - Low Priority: Defects that have minimal impact on the functionality of the software but may still need to be software's functionality or usability, can be easily addressed to maintain the quality and polish of the circumvented, or do not require immediate attention. product. a) Define errors with its different types. 4. Cosmetic: Cosmetic defects have minimal impact on Errors refer to deviations between the intended the functionality or usability of the software and usually behaviour of a software system and its actual behaviour. involve issues related to the appearance or presentation Different types of errors include: of the user interface. These defects do not affect the - Syntax Errors: Errors in the syntax of the code that core functionality of the software and are often prevent it from being compiled or executed properly. considered low-priority for resolution. - Runtime Errors: Errors that occur while the program is b) Unit Testing and Load Testing: running, such as division by zero or accessing a null Unit Testing: Unit testing is a software testing technique pointer. where individual units or components of a software - Logical Errors: Errors in the logic of the program that application are tested in isolation to ensure that they cause it to produce incorrect results despite being function correctly. The purpose of unit testing is to syntactically and semantically correct. validate the behaviour of each unit of code (such as b) Enlist the different types of loop testing. functions, methods, or classes) independently of other - Simple Loop Testing: Testing each loop in the program units and to detect and fix defects early in the independently to ensure that it behaves as expected development process. Here are key aspects of unit under normal conditions. testing: - Nested Loop Testing: Testing loops that are nested - Isolation: Unit tests are designed to run in isolation, within other loops to verify their behaviour in different meaning they test a single unit of code without relying iterations. on or interacting with other parts of the system. This - Boundary Loop Testing: Testing loops with boundary allows defects to be localized to specific units, making values to ensure that they handle minimum and them easier to diagnose and fix. maximum values correctly. - Automation: Unit tests are typically automated using - Infinite Loop Testing: Testing loops that have the testing frameworks or tools, making it efficient to run potential to become infinite to ensure that they terminate them frequently during the development process. properly or handle termination conditions appropriately. Automation helps ensure that unit tests are executed c) Write objective of writing test cases. consistently and reliably, facilitating rapid feedback on - Validating that the software meets specified functional code changes. and non-functional requirements. - Fast Execution: Unit tests are designed to execute - Identifying defects or errors in the software. quickly, enabling developers to run them frequently as - Providing documentation and guidelines for testing the part of their development workflow. Fast execution software. times encourage developers to write more - Ensuring consistent and repeatable testing processes. tests and increase overall test coverage. - Facilitating regression testing to ensure that changes to superseded by more modern testing tools like HP the software do not introduce new defects. QuickTest Professional (UFT). Branch Coverage Testing is a testing method that ensures every possible branch from each decision point is executed at least once. This means that every “if” and 3.Bugzilla “else” in the code has been tested, which enhances the 1.Purpose: Bugzilla is an open-source issue/bug tracking testing of the control structure of the programs. tool that allows individual or groups of developers to Advantages of Branch Coverage Testing: keep track of outstanding bugs in their product 1.Thorough Testing: Ensures all branches in the code effectively. have been tested, leading to fewer bugs in production. 2.Features: It includes capabilities such as advanced 2.Identifies Dead Code: Helps in identifying parts of the search, workflow control, email notifications, and code that are never executed, which could indicate detailed reporting. unnecessary or obsolete code. 3.Use Cases: Commonly used by developers and 3.Improves Code Quality: Forces a thorough review of organizations to manage software development and decision-making code, which can lead to better coding track bugs and issues throughout the development practices and improved code quality. lifecycle 4.Higher Test Coverage: Increases the test coverage Define test criteria and explain its types. metrics, providing a more comprehensive assessment of Test criteria refers to the conditions or requirements the software quality. used to determine whether a software system has Disadvantages of Branch Coverage Testing: passed or failed a test. There are various types of test 1.Time Consuming: Testing every possible branch can be criteria, including: time-consuming, especially in complex applications with Structural Criteria: Based on the internal structure of the numerous decision points. software, such as code statements, branches, or paths. 2.Higher Costs: Requires more resources and time, Examples include statement coverage, branch coverage, which can increase the cost of the testing phase. and path coverage. 3.Complexity: Can be complex to implement in large Functional Criteria: Based on the expected behavior or systems with numerous branches, potentially requiring functionality of the software. Examples include sophisticated tools or experienced testers. requirement- based testing, equivalence partitioning, 4.Doesn’t Guarantee Bug-Free Software: While it and boundary value analysis. improves coverage, it still doesn’t necessarily catch Experience-Based Criteria: Based on the tester's every bug, particularly those not directly related to experience or intuition, often used when formal branch logic (like performance issues). specifications are lacking. Examples include exploratory 5.Redundancy: May lead to redundant testing if not testing and error guessing planned well, especially if branches have similar or Write any two limitations of manual testing. overlapping functionality. 1. Limited Coverage: Manual testing is labor-intensive 1.Selenium and time-consuming, making it impractical to achieve 1.Purpose: Selenium is primarily used for automating exhaustive testing of large or complex software systems web browsers, making it useful for testing web within reasonable timeframes. applications. 2. Human Error: Manual testing is prone to errors due to 2.Features: It supports multiple programming languages human limitations such as fatigue, inconsistency, and such as Java, C#, Python, and Ruby. It allows for the oversight, which can result in missed defects or creation of robust, browser-based regression automation inadequate test coverage suites and tests. Enlist the different types of loop testing. 3.Use Cases: Used for testing websites across different - Simple Loop Testing: Testing each loop in the program browsers and platforms, automating repetitive web- independently to ensure that it behaves as expected based administration tasks, and scraping web data. under normal conditions. 2.Winrunner - Nested Loop Testing: Testing loops that are nested 1.Purpose: Winrunner, developed by Mercury Interactive within other loops to verify their behaviour in different and now owned by Micro Focus, was a popular iterations. automated functional GUI testing tool that supported the - Boundary Loop Testing: Testing loops with boundary testing of enterprise applications. values to ensure that they handle minimum and 2.Features: It allowed users to record and playback user maximum values correctly. interface interactions as scripts. It featured a built-in - Infinite Loop Testing: Testing loops that have the scripting language called Test Script Language (TSL). potential to become infinite to ensure that they terminate 3.Use Cases: Primarily used for regression testing to properly or handle termination conditions appropriately. ensure new software versions did not introduce new Classification defects bugs into existing systems. It has largely been Defects in one-line points are typically classified into categories such as superficial, dimensional, and structural defects, reflecting their impact on the appearance, measurements, or integrity of materials or products.