Podcast
Questions and Answers
What is the primary purpose of using software tools in test automation?
What is the primary purpose of using software tools in test automation?
- To control and set up test preconditions (correct)
- To execute tests
- To compare actual outcomes to predicted outcomes
- To write test scripts
Which of the following is NOT a task involved in test automation?
Which of the following is NOT a task involved in test automation?
- Using purpose-built software tools to control and set up test preconditions
- Executing tests
- Writing test cases (correct)
- Comparing actual outcomes to predicted outcomes
What is the main goal of comparing actual outcomes to predicted outcomes in test automation?
What is the main goal of comparing actual outcomes to predicted outcomes in test automation?
- To identify test cases
- To determine the test environment
- To measure test execution time
- To verify the correctness of the software (correct)
What is an essential task in test automation?
What is an essential task in test automation?
In the context of test automation, what does 'test preconditions' refer to?
In the context of test automation, what does 'test preconditions' refer to?
What is a common reason for test failures in automated testing?
What is a common reason for test failures in automated testing?
Why is a dedicated test environment necessary in automated testing?
Why is a dedicated test environment necessary in automated testing?
What is the purpose of documenting automated test cases?
What is the purpose of documenting automated test cases?
What is the benefit of tracing individual steps in automated test cases?
What is the benefit of tracing individual steps in automated test cases?
What is a key characteristic of easily maintainable automated test cases?
What is a key characteristic of easily maintainable automated test cases?
What is the benefit of reusing automated testware?
What is the benefit of reusing automated testware?
What is a critical aspect of test automation frameworks?
What is a critical aspect of test automation frameworks?
What is the primary goal of test automation in terms of test environment?
What is the primary goal of test automation in terms of test environment?
What should be done when new or changed requirements cause tests or entire test suites to fail?
What should be done when new or changed requirements cause tests or entire test suites to fail?
What is an important consideration when planning for deployment of test scripts?
What is an important consideration when planning for deployment of test scripts?
Why is it essential to have maintainable test code in test automation?
Why is it essential to have maintainable test code in test automation?
What should be done with automated test scripts that are no longer useful or necessary?
What should be done with automated test scripts that are no longer useful or necessary?
What is a key capability that a Test Automation Framework (TAF) should have?
What is a key capability that a Test Automation Framework (TAF) should have?
Why is it important to monitor the SUT when continuously running a test case or set of test cases?
Why is it important to monitor the SUT when continuously running a test case or set of test cases?
What is a challenge in maintaining test automation code?
What is a challenge in maintaining test automation code?
What is a reason why test automation code can be complex to maintain?
What is a reason why test automation code can be complex to maintain?
What is the purpose of testware in test automation?
What is the purpose of testware in test automation?
Which of the following approaches involves testing through the user interface of the SUT?
Which of the following approaches involves testing through the user interface of the SUT?
What is one of the objectives of test automation?
What is one of the objectives of test automation?
What is a disadvantage of test automation?
What is a disadvantage of test automation?
What is a limitation of test automation?
What is a limitation of test automation?
What is an advantage of test automation?
What is an advantage of test automation?
Which of the following is an example of a test automation approach?
Which of the following is an example of a test automation approach?
What is a benefit of test automation in terms of test execution?
What is a benefit of test automation in terms of test execution?
What is a success factor in test automation projects?
What is a success factor in test automation projects?
What is a type of testing involved in test automation?
What is a type of testing involved in test automation?
Flashcards
Test Automation
Test Automation
Using software tools to control and set up tests, execute them, and compare actual results to expected results.
Test Cases
Test Cases
Detailed steps to test specific functions or features of a software system.
Test environment
Test environment
The setup (hardware, software, network, data) needed to run tests.
Testware
Testware
Signup and view all the flashcards
Test Automation Process
Test Automation Process
Signup and view all the flashcards
API testing
API testing
Signup and view all the flashcards
GUI testing
GUI testing
Signup and view all the flashcards
Automated Test Scripts
Automated Test Scripts
Signup and view all the flashcards
Test Efficiency
Test Efficiency
Signup and view all the flashcards
Function Coverage
Function Coverage
Signup and view all the flashcards
Test Frequency
Test Frequency
Signup and view all the flashcards
System Reliability
System Reliability
Signup and view all the flashcards
Test Data
Test Data
Signup and view all the flashcards
Test Automation Advantages
Test Automation Advantages
Signup and view all the flashcards
Test Automation Disadvantages
Test Automation Disadvantages
Signup and view all the flashcards
Test Automation Limitations
Test Automation Limitations
Signup and view all the flashcards
Maintainability
Maintainability
Signup and view all the flashcards
Troubleshooting
Troubleshooting
Signup and view all the flashcards
Continuous Monitoring
Continuous Monitoring
Signup and view all the flashcards
Test Deployment
Test Deployment
Signup and view all the flashcards
Test Retirement
Test Retirement
Signup and view all the flashcards
Study Notes
Test Automation in Software Testing
- Test automation involves using purpose-built software tools to control and set up test preconditions
- It includes executing tests using these software tools
- The automated process also compares actual outcomes to predicted outcomes
Key Principles for Test Automation
- Keep automated tests up-to-date: fix failed tests instead of disabling them.
- Plan for deployment: ensure test scripts can be easily deployed, changed, and redeployed.
- Retire tests as needed: ensure automated test scripts can be easily retired if they are no longer useful or necessary.
- Monitor and restore the System Under Test (SUT): continuously monitor the SUT and recover from fatal errors.
- Enable easy troubleshooting: provide a way to troubleshoot failing tests due to SUT, test automation, or test environment issues.
- Address the test environment appropriately: ensure consistency in the test environment and test data.
- Document automated test cases: clearly describe and document test automation goals and objectives.
- Trace automated tests: support tracing for test automation engineers to trace individual steps to test cases.
- Enable easy maintenance: ensure automated test cases are easily maintained, analyzable, changeable, and expandable.
Test Automation Process
- Designing the testware: including software, documentation, test cases, test environments, and test data.
- Implementing automated test cases: executing tests without human interaction.
- Monitoring and controlling the execution of automated tests: interpreting, reporting, and logging test results.
Test Automation Approaches
- API testing: testing through public interfaces to classes, modules, or libraries of the SUT.
- GUI testing/CLI testing: testing through the user interface of the SUT.
- Testing through a service or protocol: testing through a service or protocol.
Objectives of Test Automation
- Improve test efficiency: reduce the total test cost and shorten the test execution period.
- Provide wider function coverage: perform tests that manual testers cannot.
- Increase test frequency: reduce the time required for test cycles.
- Improve system reliability: improve repeatability, consistency, and system reliability.
Advantages of Test Automation
- Run more tests per build: enable more tests to be run per build.
- Create complex tests: create tests that cannot be done manually (real-time, remote, parallel tests).
- Less operator error: reduce the possibility of human error.
- More effective use of testing resources: use testing resources more efficiently.
- Quicker feedback: get quicker feedback regarding software quality.
- Improved system reliability: improve system reliability through repeatability and consistency.
Disadvantages of Test Automation
- Additional costs: require additional costs for setup and maintenance.
- Initial investment: require an initial investment to set up the test automation system.
- Requires additional technologies: require additional technologies and skills.
- Team needs development and automation skills: require team members to have development and automation skills.
- Ongoing maintenance: require ongoing maintenance and updates.
- Can distract from testing objectives: can distract from testing objectives, focusing on automating tests instead of executing tests.
Limitations of Test Automation
- Not a replacement for exploratory testing: cannot replace exploratory testing.
- Limited to machine-interpretable results: can only check machine-interpretable results.
- Limited to actual results: can only check actual results that can be verified by an automated test oracle.
- Not all manual tests can be automated: cannot automate all manual tests.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.
Related Documents
Description
This quiz covers the tasks involved in test automation, including setting up test preconditions, executing tests, and comparing actual outcomes to predicted outcomes in software testing.