When would you be MOST likely to store a test environment configuration with other testware?
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.
The functional suitability testing of Requirement 1 has now been automated as fully as possible. A change to add audit logging of user activity is planned but has not yet been made. After a small change to the UI code, the last regression run contained a significant number of unexplained test failures. At the point each test stopped, the actual and expected results showed no discrepancies. In each case, the run was able to continue with the next test in the suite. Preliminary investigation showed that the points at which these tests stopped had nothing obvious in common.
Which option below contains the BEST next steps to investigate this?
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?
An automated test case that should always pass sometimes passes and sometimes fails intermittently (non-deterministic behavior) when executed in the same test environment, even if no code (i.e., SUT code or the test automation code) has been changed. Which of the following statements about the root cause of this non-deterministic behavior is TRUE?
An automated test script makes a well-formed request to a REST API in the backend of a web app to add a single item for a product (with ID = 710) to the cart and expects a response confirming that the product is successfully added. The status line of the API response is HTTP/1.1 200 OK, while the response body indicates that the product is out of stock. The API response is correct, the test script fails but completes, and the message to log is: The product with ID = 710 is out of stock. Cart not updated. When this occurs, you are already aware that both the failed test and the API are behaving correctly and that the problem is in the test data. The TAS supports the following test logging levels: FATAL, ERROR, WARN, INFO, DEBUG. Which of the following is the MOST appropriate test logging level to use to log the specified message?
(Which of the following statements about how test automation is applied across different software development lifecycle models is TRUE?)
A SUT (SUT1) is a client-server system based on a thin client. The client is primarily a display and input interface, while the server provides almost all the resources and functionality of the system. Another SUT (SUT2) is a client-server system based on a fat client that relies little on the server and provides most of the resources and functionality of the system. A given TAS is used to implement automated tests on both SUT1 and SUT2. The main objective of the TAS is to cover as many system functionalities as possible through automated tests executed as fast as possible. Which of the following statements about the automation solution is BEST in this scenario?
A TAS that performs automated testing in a single test environment was successfully manually installed and configured from a central repository, with all its components in the correct versions. It was also verified that all TAS components in this environment are capable of providing reliable and repeatable performance. The TAS will be used to run several suites of automated regression test scripts on various SUTs in the test environment. Your current goal is to complete all preliminary verifications to ensure that the TAS works correctly. Which of the following activities would you perform FIRST?
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?
Which items should be included in a report that is produced after execution of a test suite?
A suite of automated test cases was run multiple times on the same release of the SUT in the same test environment. Consider analyzing a test histogram that shows the distribution of test results (pass, fail, etc.) for each test case across these runs. Which of the following potential issues is MOST likely to be identified as a result of such an analysis?
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?
You are a TAE responsible for a TAS that is used on several products, all of which have complex UIs. A substantial proportion of the automated tests break on a regular basis, usually for reasons associated with the UI. The investigation and maintenance this requires is significantly reducing the productivity of the teams and the return on investment.
You are looking for ways to improve the test cases in this TAS. Which of the following approaches would be MOST appropriate?
a) Artificial intelligence
b) Test histograms
c) Reliability growth modelling
d) Schema validation
e) Operational profiles
To improve the maintainability of test automation code, it is recommended to adopt design principles and design patterns that allow the code to be structured into:
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.
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
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
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 have agreed with your organization's managers to conduct a pilot project to introduce test automation. Managers' expectations about the benefits of automation are too optimistic. Which of the following is LEAST relevant when deciding the scope of the pilot project's objectives?