Consider a TAS implemented to perform automated testing on native mobile apps at the UI level, where the TAF implements a client-server architecture. The client runs on-premise and allows creation of automated test scripts using TAF libraries to recognize and interact with the app’s UI objects. The server runs in the cloud as part of a PaaS service, receiving commands from the client, translating them into actions for the mobile device, and sending the results to the client. The cloud platform hosts several mobile devices dedicated for use by this TAS. The device on which to run test scripts/test suites is specified at run time. You are currently verifying whether the test automation environment and all other TAS/TAF components work correctly. Which of the following activities would you perform to achieve your goal?
Which of the following layers within the TAA contains technology-specific implementations that enable automated tests to have the execution of their logical actions result in actual interaction with the appropriate interfaces of the SUT?
You are evaluating the best approach to implement automated tests at the UI level for a web app. Specifically, your goal is to allow test analysts to write automated tests in tabular format, within files that encapsulate logical test steps related to how a user interacts with the web UI, along with the corresponding test data. These steps must be expressed using natural language words that represent the actions performed by the user on the web UI. These files will then be interpreted and executed by a test execution tool. Which of the following approaches to test automation is BEST suited to achieve your goal?
Which one of the following answers does NOT refer to an example of configuration item(s) that should be specified in development pipelines to identify a test environment (and its specific test data) associated with a web app under test on which to execute automated tests?
Which part of the SUT can be changed to better support test automation?
Your company is about to start a project to replace an old sales and merchandising system with a new version that will be based on modern platforms. The main requirements for the system are:
1. Loading sales data, sent electronically from the stores each evening, into a central database.
2. Producing sales reports for the merchandisers, whose job is to manage stock levels in stores.
3. Producing forecast reports, used to predict future demand for each product, based on a combination of sales history and forecasting parameters. The parameters will be entered by the merchandisers into a browser-based front end and the reports will be produced overnight. The users will be able to retrieve the reports, on screen or in print, via an interactive feature.
Requirements 1 and 2 were already met by the old system and will be rewritten in the new system with some minor functional changes. The sales data will, as before, be loaded in an overnight batch run. There have been problems with the old system at peak periods when this run has taken longer than scheduled, so that dependent jobs could not finish before the start of the next working day. The Data Centre manager requires that the new system's overnight batch runs take 10% less time than the old one, including the new reports, to allow time for all jobs to complete.
Requirement 3 is new. The functionality provided by the UI will be simple and the Sales & Merchandising manager requires that it be easy to use.
The data for testing the reports will be extracted from the old system in production and will be anonymized before use.
The system will be developed using an Agile lifecycle with iterations of fixed length. This will be the first full deployment of this methodology, which has just completed a successful pilot. It is a relatively simple development and is expected to be completed in three releases, each taking approximately two months.
Until now the company has not automated test execution, but the Agile pilot identified this as a critical success factor. You are an experienced TAE and have been recruited to implement test automation, and you are now considering what the TAS for this should look like.
Which option contains the THREE MOST important considerations in determining the nature of the TAS that will be needed for this project?
i) The tool(s) chosen for functional test automation should support scripting techniques that will be compatible with a performance test tool.
ii) The tool(s) chosen for functional test automation should support scripting techniques that will be useful for usability testing.
iii) The TAS should support testing at the component integration, system, system integration and acceptance levels.
iv) The TAS should support testing at the component, component integration, system and acceptance levels.
v) The TAS should support the handling of the large quantities of data that will be needed to test the forecast reports.
Which of the following descriptions of what some test automation tools can be used to do is TRUE?
You are employed as a TAE on a project to build a purchasing system. The main requirements for the system are:
1) Allow users to enter details of items that they wish to have purchased and, from these details, create a purchase request.
2) Take each purchase request through a workflow that will allow the requestor's line manager to approve the request, reject it, or return it for clarification/modification.
3) Forward approved requests to the Purchasing Department.
4) Allow purchasers to find the best available supplier and place the request on that supplier as a purchase order.
Requirement 1 has now been delivered and has been satisfactorily tested manually. In parallel, you have developed a TAS so that functional suitability testing can be automated.
You intended to use the implementation of Requirement 1 as a pilot for the TAS. Which TWO of these objectives are MOST appropriate for this pilot?
a) Generate prototypes for the implementation options of the TAS
b) Demonstrate the suitability of at least one TAS implementation option
c) Expose any risks to further deployment of this TAS
d) Assess the quality of the implementation of Requirement 1
e) Enable a calculation of the likely return on investment for this TAS
How is automation typically applied in a Waterfall lifecycle model?
(Which of the following aspects of “design for testability” is MOST directly associated with the need to define precisely which interfaces are available in the SUT for test automation at different test levels?)
Your company is about to start a project to replace an old sales and merchandising system with a new version that will be based on modern platforms. The main requirements for the system are:
1. Loading sales data, sent electronically from the stores each evening, into a central database.
2. Producing sales reports for the merchandisers, whose job is to manage stock levels in stores.
3. Producing forecast reports, used to predict future demand for each product, based on a combination of sales history and forecasting parameters. The parameters will be entered by the merchandisers into a browser-based front end and the reports will be produced overnight. The users will be able to retrieve the reports, on screen or in print, via an interactive feature.
Requirements 1 and 2 were already met by the old system and will be rewritten in the new system with some minor functional changes. The sales data will, as before, be loaded in an overnight batch run. There have been problems with the old system at peak periods when this run has taken longer than scheduled, so that dependent jobs could not finish before the start of the next working day. The Data Centre manager requires that the new system’s overnight batch runs take 10% less time than the old one, including the new reports, to allow time for all jobs to complete.
Requirement 3 is new. The functionality provided by the UI will be simple and the Sales & Merchandising manager requires that it be easy to use.
The data for testing the reports will be extracted from the old system in production and will be anonymized before use.
The system will be developed using an Agile lifecycle with iterations of fixed length. This will be the first full deployment of this methodology, which has just completed a successful pilot. It is a relatively simple development and is expected to be completed in three releases, each taking approximately 2 months.
You are an experienced TAE and have been recruited to implement test automation on this project and have started to evaluate candidate tools to automate functional and some non-functional testing. It is already clear that no single tool will meet all requirements, and that the developers’ existing Integrated Development Environment will meet the automation needs of their testing. The TAS will need to support CI/CD.
When reviewing your tool comparison table, what two tool capabilities will be MOST beneficial for this project?
i) The ability to support multiple and configurable test environments.
ii) The ability to manage test data in a way that supports version control of the data sets.
iii) The ability to be compatible with other tools that are likely to be used on the project.
iv) The ability to expand the overall test architecture and to be scalable and modifiable.
v) The ability for non-technical users to enter requests for customizable reports.
You are working as a TAE for a small start-up insurance broker and your next project will be a new system for generating motor insurance quotes. The project will follow an Agile methodology. The stakeholders are keen to get it into production, but are realistic about the need to allow enough time for thorough testing and support automation of tests where appropriate.
Which approach for automating the tests would be MOST suitable for this project?
An API's response to a request made to the corresponding endpoint should return some specific data about a payment transaction in JSON format. In particular, your goal is to write the test automation code, keeping it as short as possible, aimed at determining whether that response includes certain properties (transaction_id, amount, status, timestamp) with the data types and formats expected. Assuming that the TAF provides all the necessary support to validate the specified API response, how would you BEST achieve your goal?
Some automated regression test scripts run by a TAS in a given test environment make calls to private APIs that require authentication for all requests (the authentication method is the same for all APIs). The SUT is a business-critical system. The following two changes are planned: a change in the authentication method of all APIs and a minor upgrade of the OS (Operating System) in the test environment. You have updated the test scripts to cope with the change in the API authentication method. Which of the following sequences of activities is BEST to ensure that the test scripts are not adversely affected by these changes?
When choosing an automation tool, which would be the BEST option for automation testers who have programming skills?
As a TAE, you are evaluating a test automation tool to automate some UI tests for a web app. The automated tests will first locate the required HTML elements on the web page using their corresponding identifiers (locators), then perform actions on those elements, and finally check the presence of any expected text for an HTML element. These tests are independent of each other and are organized into a test suite that must be run every night against the most recent build of the web app. There is a high risk that the web app will crash while running some automated tests. Based only on the given information, which of the following is your MOST important concern related to the evaluation of the test automation tool?
You are employed as a TAE on a project to build a purchasing system. The main requirements for the system are:
1) Allow users to enter details of items that they wish to have purchased and, from these details, create a purchase request.
2) Take each purchase request through a workflow that will allow the requestor’s line manager to approve the request, reject it, or return it for clarification/modification.
3) Forward approved requests to the Purchasing Department.
4) Allow purchasers to find the best available supplier and place the request on that supplier as a purchase order.
Requirement 1 has now been delivered and has been satisfactorily tested manually. In parallel, you have developed a TAS so that functional suitability testing can be automated.
You have just conducted a pilot of the TAS on the implementation of Requirement 1 and several things went wrong:
• One test failed because some reference data that it needed was missing. This and several other failures were difficult to diagnose.
• Another test failed unexpectedly because an old version of the script was used.
Which three measures could mitigate these risks during deployment?
a) Full test logging down to and including trace level
b) Identification and correct configuration of all firewalls
c) Automated creation and loading of all data to meet test preconditions
d) Provision of proper device configuration plans
e) Careful packaging with thorough configuration management
You have been recruited as a TAE by a large travel agency and are now responsible for a mature TAS that is dedicated to functional testing of the company's booking system, which covers flights, hotels, and packaged holidays. This application contains a complex UI and a lot of functionality. It is undergoing constant maintenance and enhancement by an Agile team that adds tests to the regression test suite at the end of every iteration.
The TAS supports structured scripting and this has been implemented to a high standard, with a well-managed script library and minimal code duplication. The TAA will not support any more advanced scripting techniques. The test automation that has been achieved so far was well received at first but is now the target of increasing criticism. It is perceived as being old-fashioned, poorly documented and, in particular:
1. The test script maintenance overhead is becoming excessive because the test analysts frequently want data values to be changed.
2. Test analysts are complaining that a new test which is similar to an existing one, except for data values, requires a new high-level script, and that they must ask a technical test analyst to do this for them.
3. The nightly full regression run is taking a long time and there is a risk that, as more tests are added, it will soon take too long to run in the available window.
4. Some tests break frequently because of a slow response from the SUT.
5. Some transactions are difficult to verify because they rely on variables that cannot be seen through the UI of the SUT.
6. The UI of the TAF is difficult to learn.
Your new manager wants quick improvements to address items 1, 2 and 3. She has accepted that the TAA may need to be enhanced to support the improvements.
Which TWO improvements will BEST fit this scenario?
a) Transition the automation to data-driven testing
b) Transition the automation to keyword-driven testing
c) Adopt a set of standard verification methods
d) Review the test automation scripts for functional duplication
e) Implement hard-coded waits in scripts that have been affected by slow SUT response
You work as a TAE for a software vendor that produces bespoke software. Your current project is developing a process control system where data from sensors on the factory floor and human input through a web-based front end undergoes processing on backend platforms. This results in control instructions that are sent to the production line via a message broker.
Your test environment contains all of these components, including the sensors which run in a test harness. These sensors are third-party components that are still under development, so they are often upgraded. The message broker is also a new third-party component which is still receiving regular patches. This requires frequent re-installation of the TAS, which takes significant manual effort, and there have been several occasions where it was not built correctly due to missing components and had to be rebuilt.
Which action is MOST likely to solve this issue with the TAS?
In which way would a feature toggle configuration be used?
You are working for a clothing retailer that has big stores in many cities. Your TAS, for the first time, has just been used for reliability and stress testing of the overnight batch processing that collects sales transactions from the stores and adds them to a data warehouse; functional suitability tests have been reused for these runs.
All tests have finished normally but their results have not been satisfactory, and it has been difficult to understand the nature of the defect or defects that have been causing the failures.
What data, if added to the test logs, would MOST likely help with debugging in this situation?
a) Dynamic data about the status of the test platforms
b) Screenshots taken during test execution
c) Crash dumps and stack traces
d) Values of randomly generated test input data
e) Counts of the quantity of test cases executed during each run
Which of the following practices can be used to specify the active (i.e., actually available) features for each release of the SUT and determine the corresponding automated tests that must be executed for a given release?
You have been tasked with adding the execution of build verification tests to the current CI/CD pipeline used in an Agile project. The goal of these tests is to verify the stability of daily builds and ensure that the most recent changes have not altered core functionality. Currently, the first activity performed as part of this pipeline is the static source code analysis. Which of the following stages in the pipeline would you add the execution of these smoke tests to?
Your TAS is being used for automated functional suitability testing of a stock management system. Several tests have crashed. Despite the fact that the SUT creates detailed logs of all its activity, it has been difficult to determine the reason(s) for these crashes from the TAS and SUT test logs.
What actions are MOST likely to help with debugging?
a) Ensure that the TAS logs a count of how many times each test case is run.
b) Ensure that the SUT logs all available configuration data when it starts up.
c) Ensure that the SUT logs all available crash dumps and stack traces in the event of failure.
d) Ensure that the SUT logs all values of randomly generated test input data.
e) Ensure exact time synchronization of all test logs before any tests are run.