Framework Flashcards
What is a framework?
A framework defines a set of rules or best practices that we can follow in a systematic way to achieve the desired results.
Types of Test Automation Framework
- Linear Scripting Framework
- Modular Testing Framework
- Library Architecture Testing Framework
- Data-driven Testing Framework
- Keyword Driven Testing Framework
- Hybrid Testing Framework
- Behavior Driven Development Testing Framework
Linear Scripting Framework
- Basic level test automation framework that is in the form of ‘Record and Playback’ in a linear fashion.
- This type of framework is used to test small-sized applications.
Advantages of Linear Scripting Automation Framework
- Can generate test scripts (Record and playback) without planning much or consume much time
- Coding knowledge is not required
- A quick way to generate test scripts
OR
- Flexible
- Simple
- Fast
Disadvantages of Linear Scripting Automation Framework
- Lack of reusability due to autogenerated scripts
- Hard coding the data doesn’t allow us to run with multiple data sets
- Maintenance is —high – It requires a lot of effort to do even small changes.
OR
- Single-use
- High Maintenance
- Redundant
Modular Testing Framework
- Testers create test scripts module wise by breaking down the complete application under test into smaller, independent tests.
- In simple words, testers divide the application into multiple modules and create test scripts individually.
Advantages of Modular Testing Framework
- Better scalability and easier to maintain due to breaking down the complete application into different modules
- Can write test scripts independently
- Changes in one module bring no or low impact on the other modules
OR
- Reusable
- Modular approach
- Efficient
- Scalable
Disadvantages of Modular Testing Framework
- Takes more time to analyze the test cases and to identify reusable flows
- Due to hardcoded data in the test scripts, it’s not possible to sue multiple data sets.
- Requires coding skills to set up the framework
OR
- Less flexible
- Requires technical knowledge
- Complex
Library Architecture Framework
- This framework is derived from the modular framework that aims to provide a greater level of modularity to testing by breaking down tests by units, functions, etc.
- The library architecture framework identifies similar tasks within test scripts and groups them by function. These modular parts aren’t directly about function—they’re more focused on common objectives. Then these functions are stored in a library sorted by their objectives, and test scripts call upon this library to obtain different functionality when testing.
Advantages of Library Architecture Framework
- A high level of modularity leads to increased scalability of test cases
- Increased reusability as libraries can be used across different test scripts
- Can be a cost-effective solution due to its reusability, especially in larger projects
OR
- High reusability
- Cost-effective
- Scalable
- High long time ROI
Disadvantages of Library Architecture Framework
- Can be complex to set up and integrate into delivery pipelines
- Technical expertise is required to identify and modularize the common tasks
- Test data are static as they are hardcoded in script with any changes requiring direct changes to the scripts
OR
- More development time
- High technical knowledge required
- Complicated
Data-Driven Framework
- The data-driven test automation framework is focused on separating the test scripts logic and the test data from each other.
- It allows us to create test automation scripts by passing different sets of test data.
- The test data set is kept in the external files or resources such as MS Excel Sheets, MS Access Tables, SQL Database, XML files, etc.,
- The test scripts connect to the external resources to get the test data.
- By using this framework we could easily make the test scripts work properly for different sets of test data.
- This framework significantly reduces the number of test scripts compared to the module-based framework.
- The data-driven test automation framework is focused on separating the test scripts logic and the test data from each other.
Advantages of a Data-Driven Framework
- It supports multiple data sets
- Modifying the test scripts won’t affect the test data
- No need to hardcode test data
- Saves time by executing more tests
OR
- Scalable
- Faster testing
- Fewer scripts required
- Flexible
Disadvantages of a Data-Driven Framework
- Require coding skills
- Setting up the framework and test data takes more time
- Need experienced automation testers to design framework
OR
- High setup time
- Excellent technical knowledge required
- Troubleshooting is difficult
Keyword Driven Testing Framework
- It is also known as table-driven testing or action word based testing.
- In Keyword-driven testing, we use a table format to define keywords or action words for each function or method that we would execute.
- It performs automation test scripts based on the keywords specified in the excel sheet.
- By using this Framework, testers can work with keywords to develop any test automation script, testers with less programming knowledge would also be able to work on the test scripts.
- The logic to read keywords and call the required action mentioned in the external excel sheet is placed in the main class. Keyword-driven testing is similar to data-driven testing.
- Even though to work on this framework doesn’t require much programming skills but the initial setup ( implement the framework) requires more expertise.