Use Case Posts
Regression Testing Techniques:
Retest All In this technique, the entire test suite is executed again to verify that no existing functionality has been affected by recent code changes. It's a comprehensive but time-consuming approach.
Selective Regression Testing:
Selective Regression Testing This technique involves selecting a subset of test cases from the existing test suite that is most likely to be affected by the code changes. It's a more efficient approach compared to retesting all test cases.
Test Case Prioritization:
Test Case Prioritization Test cases are prioritized based on factors like their likelihood of failure, criticality, and importance to the application. High-priority test cases are executed first to quickly identify issues.
Test Automation tools are used to create and execute test scripts that can be easily rerun whenever there are code changes. Popular automation tools include Selenium, Appium, and JUnit for Java applications.
Regression Testing Tools:
Selenium is one of the most popular open-source automation testing tools for web applications. It supports multiple programming languages and browsers and allows testers to create robust regression test suites.
Appium is an open-source tool for automating mobile applications on Android and iOS platforms. It can be used for regression testing of mobile apps.
JUnit is a widely-used testing framework for Java applications. It's especially useful for unit and regression testing in the Java ecosystem.
TestNG is another Java-based testing framework that offers more advanced testing features compared to JUnit, making it suitable for regression testing.
Jenkins is a popular open-source automation server that can be used to automate the execution of regression test suites. It integrates with various testing tools and can schedule test runs based on code changes.
Postman is a popular tool for testing RESTful APIs. It can be used for API regression testing to ensure that changes in the API do not break existing functionality.
TestRail is a test management tool that helps teams organize and manage their regression test cases, track test results, and collaborate on testing efforts.
JIRA, developed by Atlassian, is an issue and project tracking tool that can be used for managing and tracking regression test cases and defects.
Travis CI is a continuous integration tool that can be used to automate the execution of regression tests whenever code changes are pushed to a version control system like GitHub.
CircleCI is another continuous integration and continuous delivery (CI/CD) platform that supports automated regression testing as part of the software development pipeline.
The choice of regression testing technique and tool depends on the specific requirements of your project, the nature of the application, and the resources available. It's essential to select the most appropriate combination to ensure effective regression testing and maintain the quality of your software.
What is Mobile App Testing?
Mobile app testing is the process of tests the functionality and usability of the mobile application to make sure that it meets the requirements and the application is ready for launch.
What are Mobile application testing requirements?
- Resolutions of screen
- OS Version (For android or iOS)
- Orientation of Screen (landscape, portrait)
- GPS On/Off
- Type of application
Types of applications:
- Mobile Web application:
In a mobile web application, the Website opens on the device with the help of the mobile browser. The Mobile web app does not require any installation.
- Native application:
The native application is specifically developed for one platform (iOS, Windows 10 Mobile, Android)
- Hybrid Application:
A hybrid application is the combination of a mobile web application and a native application. It can be defined as a mobile website content show in the application format.
Step by step Mobile App Testing Process
Before start testing, we are required to planning what we have to test and for planning the test to analyse the requirements.
2. Testing Types Identification:
Before testing any mobile apps, we identify what testing is required to test the particular mobile app: functional, usability, compatibility, performance or security, etc. And also determine what functional requirements should be tested.
Identify what target devices to include:
- Identify what devices the application will support;
- Identify the earliest version of relevant operating systems will be supported;
- Choosing different screen sizes.
3. Test Case and Script Design:
Make a test case document for each and every feature and functionality.
Make separate suites for manual test cases and automated test scripts as required. Make typical sets for manual test cases and automated test scripts. Define any reusable automation scripts and modify them as per the project requirements.
4. Environment Setup:
Download, install and configure the particular application on the different mobile devices to set up the testing environment. Before starting with the actual testing, make sure the test version of the application is established.
5. Manual and Automation Testing:
We are required to execute both manual and automation test cases.
You have already identified and created which tests and scripts to use. In this phase, you’ll actually run these on the basic functionalities to ensure that there are no bugs.
6. Usability Testing:
Usability testing purpose to uncover how much the product is easy to use, understandable, is it able to satisfy the user’s needs impressively. Usability testing is the way of how output can be used by users to reach specified goals.
7. UI Testing:
UI testing is one of the very important tests in mobile application testing.
Some characteristics that should be tested for every app:
1. Screen Resolutions:
Common screen resolutions are:
- 640 × 480
- 800 × 600
- 1024 × 768
- 1280 × 800
- 1366 × 768
- 1400 × 900
- 1680 × 1050
Verification must be done starting from the smallest to the biggest resolution. If the application has a large list of cards with information, then those also need to be tested on a different resolution for their information wrapping.
2. Screen Size:
There are too many variations in screen sizes in smart devices especially.
Make sure the control size looks good, and the control is properly visible on the screen while testing.
8. Compatibility Testing:
Test the application with different browsers, mobile devices, screen resolutions, and OS versions as per the requirements.
9. Beta Testing:
When the regression testing is completed by the QA team, the build moves to User Acceptance Testing and this is done by the client. They make sure the application is bug-free and working as expected on every defined browser.
10. Performance Testing:
Performance Testing to the application using changing the different connections from 2G, 3G to WIFI, responsiveness, battery consumption, stability, etc.
Test the application to measure scalability and performance issues.
11. Localization Testing:
Localization Testing is used to test making a product, application, or document content adjustable to meet the cultural, lingual, and other requirements of a specific region or a locale.
12. Security Testing:
In Security Testing, ensure that the application is secure by validating SQL injection, data dumps, session hijacking, packet sniffing, and SSL.
13. Device Testing:
When a device is tested to ensure that it is working as expected.
Execute test cases and scripts in all the devices, in the cloud, and/or in physical devices in the lab or via testing tools.
Tips to test mobile application
- Learn the Whole app before going to the test.
- Remember, you are testing a mobile app and not a desktop or web application.
- Take into account the operating system and hardware specifications of the device which is you are testing.
- Test on real devices for better testing results.
- Use the mobile application testing tools that you are familiar with and do not use because of their popularity.
- Use cloud mobile testing.
- Mobile app testing with both portrait and landscape screen mode.
- Use Emulators and simulators whenever required.
- Verify the performance of the application.
- Do not automate everything.
- Get more accurate results using beta testing
- Time management for various testing activities.
A test plan often lists the requirements, risks, test cases, testing environments, business and quality objectives, test timelines, and other things.
What is Test Plan?
The strategy, goals, timetable, estimation, deliverables, and resources needed to carry out testing on a software product are all described in detail in a test plan. The test plan aids in estimating the amount of work required to verify the application’s quality. The test manager carefully monitors and controls every aspect of the test plan to ensure that software testing activities are carried out according to a defined methodology.
Types of Test Plans
- Master Test Plan
- Phase Test Plan
- Testing Type-Specific Test Plans
Master Test Plan
A test plan with many tiers of testing is called a master test plan. It has an entire test plan.
Phase Test Plan
One sort of test plan that addresses each element of the testing technique is a phase test plan. For instance, a list of test cases, a list of tools, etc.
Specific Test Plan
A specific test plan for major testing types like security testing, load testing, and performance testing, among others that is, a particular non-functional testing-specific test plan.
What is the Importance of a Test Plan?
There are numerous advantages to creating a test plan document, including assisting customers, business managers, and developers outside the test team in comprehending the specifics of testing.
Our thinking is guided by the Test Plan. It is like a set of rules that must be followed.
The Test Plan contains important details like test estimation, test scope, and test strategy so that it can be reviewed by the Management Team and used again for other projects.
How to write a Test Plan?
For the management team, the critical task is to make a test plan. Below steps are as follows:
1. Analyse the product
Testing the product without any knowledge is next to impossible. One should learn about the product before testing it. You should look around the website and read the documentation for the product. You can learn how to use the website and all of its features by reading the product documentation. If you’re not sure about anything, you could talk to a customer, a developer, or a designer to learn more.
2. Develop a Test Strategy
In software testing, developing a Test Plan begins with developing a Test Strategy. A high-level document known as a Test Strategy is typically created by the Test Manager. This document explains:
The testing effort and costs are determined by the project’s testing objectives and methods. The below steps should be followed:
A. Define the Scope of Testing
Precise customer requirements, a project budget, product specifications, and the talents and skills of your test team are all necessary for determining the scope.
B. Identify the Testing Type
A typical test procedure with an anticipated outcome is referred to as a Testing Type.
Each type of testing is designed to find a particular kind of product bug. However, the objective of all testing types is the same: “Early detection of all defects before releasing the product to the customer.”
C. Document Risk & Issues
Risk is an uncertain future event that has a chance of happening and the potential to lose money. When the risk occurs, it becomes the “problem.”
D. Create Test Logistics
The Test Manager should respond to the following questions in Test Logistics:
- Who will examine it?
Although the tester’s precise names may not be known, the type of tester can be identified.
- When will the test take place?
Development activities must be matched to test activities.
3. Define the Test Objective
The overall objective and level of achievement of the test execution are the Test Objectives. The testing aims to uncover as many software flaws as possible; before releasing the software under test, make sure it doesn’t have any bugs.
The following two steps should be taken to define the test objectives:
- List all software features (that might need to be tested.
- Using the aforementioned characteristics, define the test’s objective or target.
4. Define Test Criteria
A standard or rule that a test procedure or test judgment can be based on is called Test Criteria. Two types of test criteria are:-
Suspension Criteria: Describe the essential suspension requirements for a test. The active test cycle will be suspended until the suspension criteria are resolved, if they are met during testing.
Exit Criteria: It defines the criteria for a test phase’s successful completion. Before moving on to the subsequent development phase, the exit criteria—the intended test results—are required. Example: All critical test cases must pass 95% of the time.
5. Resource Planning
A resource plan is a comprehensive list of all the resources necessary to complete a project task. The number of resources (employees, equipment, and materials) required to complete a project can be determined with the assistance of resource planning, which is an important part of the test planning process. As a result, the Test Manager can accurately estimate the project’s schedule and budget.
6. Plan Test Environment
A set of software and hardware on which the testing team will run test cases is called a testing environment. Real business and user environments, in addition to physical environments like servers and front-end running environments, make up the test environment.
7. Schedule & Estimation
A common term in project management is “making a schedule.” The Test Manager can use Test Planning as a tool for monitoring project progress and controlling cost overruns by creating a solid schedule.
Deadline for employee and project: The schedule is affected by working days, the project’s deadline, and the availability of resources.
Estimating the project: The Test Manager is aware of the project’s completion time based on the estimate So that he can make the right schedule for the project.
Project Threat: Because the Test Manager is aware of the risk, he or she can add sufficient additional time to the project schedule to address it.
8. Test Deliverables
A list of all the documents, tools, and other parts that need to be made and kept up to support the testing effort is called a Test Deliverable.
After the testing cycles have ended, test deliverables are provided.
Defect Report, Installation/Test Procedures Guidelines, Release Notes, and Test Reports.
Software testing is the most common way of executing a program determined to track down the blunder. Our software needs to be error-free in order to perform well. The software will be free of all errors if the testing is successful.
7 Principles of Software Testing
There are seven principles of software testing as below:
- Testing shows the presence of defects
- Exhaustive testing is not possible
- Early testing
- Defect clustering
- Pesticide paradox
- Testing is context-dependent
- Absence of errors fallacy
- Principles of Software Testing
1) Testing shows the presence of defects
The application will be tested by the test engineer to ensure that there are no bugs or defects. During testing, we can only determine whether the software or application contains any errors. The majority of testing should be able to be traced back to the customer’s requirements, which means finding any flaws that might prevent the product from meeting the customer’s needs. This is the primary goal of testing, which uses a variety of methods and testing techniques to count the number of unknown bugs.
We can reduce the number of bugs in any application by testing it. However, this does not guarantee that the application is free of defects; software may appear bug-free after multiple types of testing. However, if the end-user encounters bugs that were not discovered during the testing process, they will be fixed at the time of deployment on the production server.
2) Exhaustive Testing is not possible
During the actual testing process, it sometimes appears to be very difficult to test all the modules and their features with effective and ineffective combinations of the input data.
As a result, rather than carrying out extensive testing, which necessitates endless calculations and results in failure for the majority of the effort, Because the product timelines prevent us from carrying out such testing scenarios, we are able to complete these variations based on the importance of the modules.
On-demand software testing pricing
3) Early Testing
In this context, “early testing” refers to all testing activities that should begin in the “requirement analysis stage” of the software development life cycle in order to find defects. This is because if we find bugs early enough, they can be fixed right away, which may save us a lot of money over bugs that are found later in the testing process.
We will need the documents for the requirement specification in order to carry out testing; Therefore, rather than addressing the issue at a later stage, such as the development phase, if the requirements are incorrectly defined, they can be addressed immediately.
4) Defect clustering
During the testing process, we can identify the number of bugs that are correlated to a small number of modules using defect clustering. This is due to a number of factors, including the modules’ potential complexity; The coding might be hard, and so on.
The Pareto Principle, states that we are able to identify that approximately, will apply to these kinds of software or applications. Twenty percent of the modules contain eighty percent of the complications. We can find the uncertain modules with this, but if the same tests are running on a regular basis, this method can be difficult, and the same test won’t be able to find new defects.
5) Pesticide paradox
This principle stated that the software or application will not be able to detect new bugs if the same set of test cases is run repeatedly over a predetermined period of time. It is critical to frequently review all test cases in order to overcome these pesticide paradoxes. Additionally, new and distinct tests must be written for the implementation of multiple software or application components to aid in the discovery of additional bugs.
6) Testing is context-dependent
According to the context-dependent principle of testing, there are a variety of market sectors, including commercial websites, e-commerce websites, and so forth. Because each application has its own requirements, features, and functionality, there is a certain method for testing commercial and e-commerce websites. To check this sort of use, we will take the assistance of different sorts of testing, different procedure, approaches, and various strategies. As a result, the application’s context determines the testing.
Functional vs non-functional testing
7) Absence of errors fallacy
We can say that the application is 99 percent bug-free once it has been tested thoroughly and no bugs have been found before it is released. However, there is a possibility that if the application is tested alongside the incorrect requirements, flaws will be discovered, and they will need to be fixed within a certain time frame. This is because the testing is done on the incorrect specification, which does not correspond to the client’s requirements. According to the absence of error fallacy, if the application is impractical and unable to fulfil the requirements and needs of the client, then identifying and fixing bugs would not be helpful.
In today’s competitive world, testing is critical to the success of any software product. Manual tests are important in software development because they can be used in situations where automated testing isn’t possible. This Blog about Manual Testing Interview Questions will help you learn software testing.
With this thorough list of over 120 manual testing interview questions and answers, you’ll be ready for your software testing interviews. These manual testing interview questions are appropriate for both fresher and experienced candidates.
Let’s start by going through some of the most common Manual Testing Interview Questions.
120+ Manual Testing Interview Questions:
Below are the 120+ manual testing interview questions and answers:
1) What is Software Testing?
Software testing is a process to test whether the actual product is matched with an expected requirement or not and if getting an issue then it could be resolved before the released product to the market and at last ensure that product is bug-free.
2) What is manual testing?
Manual testing is a type of testing that involves the validation of the requirements of the application by executing a predefined set of test cases manually without the use of any automation tool.
3) Why is Software Testing Required?
Software testing is a process that verifies the product is secure and good enough to be released to the market. The reason for software testing is to find defects, errors, and unmatched or missing requirements compared to the actual requirement.
- It points out the bug and error which is made during the development.
- If identify issues at the starting stage of development, then we can reduce the coding cycles.
- Ensure that product is defect-free, and the product meets the market standard.
- Make sure that the application doesn’t result in any failures.
4) What are the two main categories of software testing?
Software testing is a vast domain, but it can be categorized into two types, such as:
- Manual Testing– Manual testing is the oldest type of software testing where the tester executes all test cases without using any tools, mean-tested whole application manually by QA testers.
- Automation Testing– Automation Testing is the process of executing repeating predefined test cases using an automation testing tool. The main focus of automation testing is replacing manual activity with automated test cases
5) Do you know the difference between quality control and quality assurance?
|Quality Control||Quality Assurance|
|Quality Control is a product-based approach of running a program to define if the application has any defect, as well as make sure software fulfils all the requirements.||Quality assurance is a process-oriented approach that focuses on making sure that the methods, techniques used to make quality deliverables are applied correctly.|
|QA means planning for doing any testing process.||QC means doing action for executing the planned process.|
|QA does not involve executing the test cases.||QC is always involved in executing the test cases.|
|QA is the technique of handling the quality of the application.||QC is a method to verify the quality of software|
6) What is quality control? Is it similar to Quality Assurance?
Quality control is a product-based strategy of running a program to define if it has any defect, as well as create sure software fulfils all requirements with end-user.
So, Quality control is not similar to Quality assurance, Quality assurance is a process-oriented approach. It is focused only on process, methods, and techniques which is used to create quality deliverables that are applied correctly.
7) What different types of manual testing are there?
Manual testing is divided into different types, which are listed below:
- Acceptance Testing
- System Testing
- Black Box Testing
- White Box Testing
- Unit Testing
- Integration Testing
8) Explain the difference between alpha testing and beta testing.
Alpha and beta both testing types are types of user acceptance testing. Find the brief description of alpha vs beta testing here.
- Alpha Testing – Alpha testing is a process that is performed before realizing the product to identify a bug.
- Beta Testing – Beta testing is a process that is performed by the end-user after realizing the product.
9) What are the different levels of manual testing?
We have different 4 levels of manual testing, which is described below:
- Unit testing – Unit testing is testing where we test separate units or the smallest pieces of source code. The goal of unit testing is to separate all parts and show that all parts are worked without any defect.
- Integration Testing – It is a type of testing where individual units are combined and tested there is no bug after integrating the separate units.
- System Testing – System testing is defined as the testing of the whole integrated product. System testing is black-box testing, and it is performed in the form of a functional requirement specification.
- User Acceptance Testing – User acceptance testing is a final level of testing, UAT is performed by the end-user or client. In UAT testing verify that software or product is ready to be released or not into the real world.
10) What is a test in manual testing?
The tested environment is used for application testing; we can test hardware as well as software programs also. The test consists of hardware, network configuration, software, and other related software.
11) Explain the procedure for manual testing.
In The manual testing process, follow the below steps:
- Project Planning and Control
- Project Design
- Test case Execution
- Evaluating exit criteria and Reporting
- Test Closure activities
12) What is the test case?
One type of document that has a set of conditions that is performed on the particular application in order to verify the expected result of the feature is called a test case.
Test case documents include test steps, preconditions, postconditions, test data, and verification requirements.
13) What is API testing?
Perform software testing API directly from their functionality, reliability, security, and performance in API testing.
The application has three separate layers:
- First is the Presentation Layer or user interface.
- The second layer is Business Layer or application user interface for business logic processing.
- The third and last layer is Database Layer for
14) Do you know the difference between verification and validation in testing?
Verification testing is done without executing the code. Verification is a static technique. Verification is coming before validation. Verification is the process where to verify the quality of the product. Verification is to reduce the chances of failure in the product.
Validation testing is including the execution of the code. Validation is dynamic testing. Validation comes after Verification. Validation is the process in which the actual requirements of the customer match with the software functionality. Validation is done after completing the development process.
15) Do you know the difference between a bug and a defect?
The tester finds fault in the software during testing it is called a bug and when a product goes to live that time developer detects the difference between the actual result and the expected result is called a defect.
Testers infrequently suppose about the difference between average and high quality tests. However, also it's frequently inconspicuous, If the test case is good. It indeed simply dissolves in the process of software verification. Testers flash back it only when they find a bug in a system. The following is an analysis showing that your test is of high quality and dependable.Tests Are Suitable for robotisation Occasionally, you can see tests that aren't completely automated. The most popular reason is that commodity is veritably complicated or nearly insolvable.
Test is performed regularly
The test doesn't crash unless the software has changed. Such a rule applies to the basics of original data generation. For illustration, we test the enrolment process for a new stoner. No doubt, if the system doesn’t induce the original dispatch, such a test most probably won’t serve on product.
Test ends with confirmation
It’s true, except in situations where one should clear the information and perform some other processes. Completion by confirmation is the stylish for any test case performing. similar allows you to make sure that the performed action actually passed rightly.
Test is stable and can be habituated in CI/ CD
still, they aren't stable enough to be used with CI/ CD, If your test suites regularly fail. Because every other product company is trying to reach CI and CD, occasionally similar tests aren't only ineffective but indeed dangerous. That’s because they take a lot of time and aren't suitable for automatic use in CI anyway.
Test requires minimum support
Tests aren't created independently. Most frequently, it's the work of a group of people who also have to support them in the future. Any member of the design should understand the test structure snappily and fluently enough. They don’t have to put in too important time and trouble. Indeed if tests are created by one person, occasionally, it can be extremely delicate to understand what this test is responsible for if it isn't created specifically to make tests easier to understand.
Tests Function in resemblant and nothing crashes sooner or latterly, test runs will take a veritably long time. In turn, this leads to slow programming speed and causes the so called “untested patch” effect.
It's worth allowing about resemblant testing so that the checking process would run smoothly. However, it automatically makes resemblant prosecution an easy task of structure debugging rather than a thing of rewriting test cases by all actors of the cargo testing company, If the tests are actuated in resemblant and they do n’t connect.
User Acceptance Technique is widely used for its efficiency and effectiveness.If we followed all steps of User Acceptance correctly then it will increase the satisfaction of a Customer.
UAT is a process of verifying that a Software or a System works appropriately as per the User Requirement.The main purpose of this testing is to ensure that a software system is all set to be in front of users in a real world.This testing phase also known as Beta and End-user testing and is mostly considered during the web development process to ensure that software is ready for the final installation for the Client site.
Types of User Acceptance Testing
- Alpha & Beta Testing: Alpha testing is done by the staff members only on an internal whereas beta testing includes the Customer's environment with the help of some customer who will going to use our System or Software.
- Black Box Testing: This type of functional testing includes all functionalities of the System without knowing the internal code structure.
- Contract Acceptance Testing: In Contract type testing, software is tested against some criteria which are already predefined in a proper contract.
- Operational Acceptance Testing: This type of Acceptance testing ensure that all the workflow used in system are working properly.
- Regulation Acceptance Testing: Compliance Acceptance Testing helps in investigate the software fulfils all the guidelines of legal and governmental process.
Criteria Before Perform User Acceptance Testing
- Entire application code should be up to date.
- Integration testing, unit testing and System testing must be completed before we perform User Acceptance Testing.
- There should not be any high/medium faults in the Integration phase of Testing.
- There must be no major defect in the Regression Testing.
- All the error/defects must get solved which we face during the testing and then testing should be done again to verify the error got fixed or not.
Involvement of Users in User Acceptance Testing:
The group is most essential for the UAT must include real end users that will going to perform a test on your system.The stakeholder and other group must incorporated that means an individual of every group is involved in the development phase must be in the team.
Start User Acceptance Testing:
After the explanation of UAT as above, you must get clear about what and why UAT must include in the software development phase. Mainly there are total of four steps that must be considered but it will depend on the number of user that will take advantage of software. The main criteria that must be followed in the software are the ‘working’ requirement of the assembled application. You can easily get a hang of it from the stories of users or system requirements. The second step is to create some test cases for UAT. User Acceptance Testcases are the test steps sets, expected results and execution conditions must be developed for some specific purpose.
These are some main points of the User Acceptance Testing that is used in the development cycle. The projects are reduced to the like of any errors that are elevated and it will reduce the total work required in the maintenance or development phase. On above all of that , you will get a happy and satisfied user that will give you more revenue.
What is Use Case Testing and How to Prepare a Test Case for Testing?
In the phases and life cycle of software development, use case plays an important role. The entire process depends on the actions of the user and the response by the system to the actions. Hence it can be seen as documentation of the actions which is performed by the user or actor and then the corresponding interaction by the system to those actions. Not all the use cases result in achieving the goal by a user to the interactions with the system.
In a use case, the system responds to the situation or behavior. It is user-oriented rather than system-oriented. That is, they are actions that are done by the actor/user and not the output produced by the system. Hence the development team writes the ‘use cases’ as this phase depends on them. The writer of use cases, a team of development, customers, all of them together contribute towards the creation of use cases and testing.
What is Use Case Document?
Use case documentation helps to complete an overview of all the several ways in which the user interacts with the system to achieve the desired objective. The documentation will help to check the requirements for the software system and what is lacking in this process.
Who will use the Use Case Document?
As the documentation helps to get an overview of ways in which users can interact with the system, better documentation is always required for easier results. This documentation will be useful to the software developers and software testers along with the stakeholders.
There are several types of uses for these documents. It helps developers to implement the code and design the same. Further, testers use them to create test cases. Business stakeholders, on other hand, use the documentation in order to understand how the software works and their respective requirements.
Elements in Use Case Testing
The major elements of the use cases are brief introductions which help to explain the case.
- Actor, that is, the users which are involved in use case actions.
- Precondition, which is the conditions that need to be satisfied before the case begins.
- Basic Flow, or the main scenario which is a normal workflow in the system. In other words, this is a flow of transactions done by actors to accomplish their goals.
- Alternate flow, which is a less common interaction done by an actor with a system
- Exception flow, which prevents a user from achieving the goal
- Postconditions that are required to be checked after the case is finished.
How to Prepare Test cases?
It is best if the test cases for the main scenario are written first and then written second for alternate steps. These steps in test cases are from use case documents. Cases are supposed to be required as steps and the user or actor must be able to enter the same. Test design techniques can be used and developed to help reduce the number of test cases which can help reduce the time taken for testing.
Writing test cases and testing is an iterative process. Practice and knowledge of domain and system are required in this case. Using case testing in applications can be used to find missing links and incomplete requirements. Finding and modifying the same will bring efficiency and accuracy into the system domain.