Sulzer test implementation: for the clients’ most exacting requirements
Successfully identifying and defining the relevant scope of testing always comes right at the very start of the Sulzer test implementation. It forms the basis for carrying out the planned tests. Organising the test implementation then involves preparing the test equipment and actually executing the tests.
We distinguish between manual and automated testing. Depending on the requirements of the project, a decision is made at the different phases of the testing process as to whether manual testing, automated testing, or even both should be employed.
With manual testing, testers conduct the defined tests by hand. They make use of the functions of the solution over the system’s user interface similar to end users. The test phases carried out and the test results achieved are recorded in parallel in the respective test management tool. We recommend compiling a checklist itemising the relevant work steps for maximum efficiency when preparing for testing.
Preparation of the Test Tools
- Ensure that all test tools, including HP ALM, Screen Capture Tool etc. are available.
- Ensure that all testers have access to the test tools
- Check whether the workflow (e.g. defects workflow) has been set up correctly and whether the roles have been correctly assigned to testers.
Set-up of the Test Scenarios
- Make sure that a complete and detailed test script is available to all testers
- Prepare the test scenarios in the test management tool for all the planned tests
- Check whether all the test data required is available
Availability of Test Resources
- Schedule all testers and ensure their availability
- Check the availability of the testers’ test equipment (notebooks, printers, barcode scanners etc.)
- Make sure that test systems are also available throughout the duration of the test – exclusively if necessary
Availability of the Test Infrastructure
- Check the availability of the test facilities for the planned duration
- Make sure that the necessary IT-Infrastructure (network, phone etc.) is available
- Ensure any additional provision (catering options etc.)
Guaranteed Project Communication and Reporting
- Set the dates for coordinating the test team (e.g. morning stand-up)
- Check whether status reporting dates and dates for defining measures possibly required to eliminate test blockages have been put in place (e.g. evening test on a fixed day)
- Relevant decision-makers need to be available for the test on the fixed day
- Escalation process needs to be communicated to the test team and escalation paths clearly defined
Providing preparation for the test has been successfully completed, nothing stands in the way of a structured and efficient progress of the test. The test is performed on the basis of a test script. Any identified deviations are handled in accordance with the defect management process and any escalations required are initiated, based on the escalation management process also documented in the test concept.
Testing at the module or component level is generally performed within a development unit. Experience has shown that the deployment of specialist, process-orientated testers is most efficient in the test stages above this. The involvement of technically less well-versed testers (including near- and offshore resources) and the use of automated testing is also possible and also makes sense within regression testing.
Automated testing is also possible in addition to manual testing. The former often complements manual testing in many projects. In our experience, the use of automation is ideal with dynamic tests repeated more than three times. The appropriate point for the use of automated testing within the specific context of a project is determined in a cost-benefit analysis. Apart from the initial automation costs, the cost of maintaining the automation framework, test scripts etc. has to be set against the time savings with repeated testing.
We have acquired in-depth experience of the entire range of possible automated testing options from many client projects – starting with in-house developed individual test frameworks for system and module tests, routine cross-module testing with unit test frameworks to the use of widely available tools for the automation of GUI tests, such as HP QTP/UFT, QF-Test or Selenium.
The scope of regression testing is a traditional example of the application of automated testing. Typically dynamic testing is carried out on new functions. The specific test cases verified in multiple manual tests are translated into automated test scripts once the test objects have functionally stabilised.
Correspondingly, the proportion of automated testing to manual testing rises with the increasing maturity of an application. The scope of the new functionality to be verified decreases in relation to the existing functionality with each release. By contrast, the scope of regression testing to detect malfunctions arising from the implementation of new requirements increases disproportionately.
However, the increasing complexity of testing can, to a certain extent, be compensated for by the higher level of automation with regression testing. However, significant compensation requires the efficient and systematic selection of regression test cases.
We also involve relevant stakeholders at the test analysis stage to obtain an efficient selection of regression test cases in our test projects. A proven way to achieve this involves workshops in which the Most Critical Items (MCI) are determined from the matrix of business transactions to be secured, with the active involvement of project stakeholders. The MCI, thus identified, then forms the reliable basis for the selection of test scenarios for regression testing, assuming the test scenarios have also been assigned to the business transactions.
Alongside the functional requirements governing IT solutions, non-functional quality criteria also need to be assured during the course of testing. This involves the stability of the system under load and compliance with performance requirements. These non-functional requirements are tested in load and performance tests.
Load and performance testing represents a further typical application for automated testing. Manual testing is generally not possible, or does not make sense for practical reasons as well as cost reasons. Generally, specialist test tools, such as HP Loadrunner or NEOTYS Neoload are used to conduct the test implementation.
Individually Tailored Test Mix
Our consulting and support in testing is clearly geared to the client’s needs and requirements. We therefore redefine for each project the most appropriate mix of manual and automated tests – for seamless and efficient testing with the best possible cost-benefit ratio.