Testing Guidelines |
Guidance Note |
|
The AMD produces software design in consultation with the BPO and ELEXON for any change to the BSC Systems.
All three stakeholders conduct a walkthrough of the design before ELEXON and the BPO approve the design.
The system changes are developed in accordance with the approved design. This may be done either by the AMD or a Third Party on AMD’s behalf. When the changes are developed, the AMD or the Third Party will perform Component and System Testing. Any defects found during this phase of testing must be rectified during this stage.
AMD Testing Overview | |
Test Levels and Test Types | Purpose |
Component and System Testing | This is the lowest level testing of software code, required for all software changes. Testing should reflect that the design specification has been implemented correctly in each of the software components and the systems which they make up. |
Factory Acceptance Testing (FAT) | FAT consists of Change Specific, Regression and Performance Testing. One or more of these test types will be carried out depending the scope and impact of the change. |
| This verifies that specific changes to software have been successfully implemented. The AMD produces scripts to test specific changes. Change Specific Testing should ensure that the user requirements of that change are met. Though the tests are conducted on a smaller set of data compared to the Live data, it is very important that it mimics the Live data as much as possible, e.g. if a data field is defined to be 3 decimal places long, it is crucial that the AMD does not limit this data to just one or two decimal places. The AMD will either tailor existing test scripts in the FAT pack or write new test scripts to test new functionality. After the change is made Live, the AMD will include these CST scripts into the FAT pack for use as regression tests or to test future changes. |
| This verifies that the unchanged functionality is unaffected by other software changes. This should be carried out if it is possible that any existing areas may be affected. A standard set of Regression Testing material is contained in the FAT Test Pack. |
| This verifies that the changed and impacted functionality is performing without any significant impact. The AMD uses the FAT test input data and carries out performance tests to compare the pre and post change performance. However AMD’s tests have limited scope because AMD’s test environment does not replicate the Live environment in terms of the hardware capacity and data. |
Installation Testing | The AMD must ensure that the BPO is able to install the software. The BPO may be executing Deployment, Backout and Data Migration testing as required by a change. |
| This tests that a new version of software can be deployed and built into the necessary environment, which may also be new. |
| This tests that new software or data can be restored to its previous version. For example, testing that an Oracle database is returned to its earlier version. |
| This tests that data can be transferred from a current software and /or hardware system to a new system. A typical case would involve data migration from one database to another, e.g. an upgrade to a newer version of Oracle database. Another example would be migration of data to a different operating system. |
Ad Hoc Testing | Elexon may ask for ad hoc testing to be carried out in any part of the AMD testing. This may be used, for example, to test particular areas not covered by the current test types. Examples include: Providing Test Data Flows for publication, Testing connectivity for BSC Service Users, and Testing Data Changes and System Parameters |
Installation Verification Testing (IVT) | This is carried out if the AMD has made amendments to any of the Party Agent Application Software. The Service Provider uses an Installation Verification Test Pack to verify that the new software can be installed correctly. The IVT test pack is a cut down version of the FAT test pack. If any changes to the Party Agent Software impact the IVT test pack, the AMD will update any relevant tests in the test pack and run the IVT test pack to verify correct installation of software for the Party Agents. |
Pre-Production Testing (PPT) | Elexon may conduct PPT of NHHDA and EAC/AA Party Agent Software. This involves full width data from a production database. This is typically an extract from a Participant’s (BSC Party Agent) database. The AMD will support Elexon in carrying out PPT testing. |
Walkthrough and Page Turn | Changes to processes, systems and documentation are discussed and considered by stepping through the changed areas. This is typically done in a workshop or meeting with appropriate subject matter experts. The purpose of Page Turning is to step through new or changed documents which affect business processes. Page Turning can also indicate whether any process Walkthroughs, which have not already been identified, are required. |
Test Witnessing/ Witness Testing | Test witnessing may be carried out by Elexon or by a participant nominated by Elexon (e.g. The BPO Host or someone from the industry) when a change is risky, e.g. changes to the Settlement calculation. Witness Testing should include positive (testing system meets requirements) and negative (testing erroneous data and conditions are handled correctly) scenarios. |
Emergency Fix and Workaround Testing | This means testing of an emergency fix or a workaround to an existing process. An emergency fix or workaround may apply to a defect in the Live environment, for example. Any of the above test types may be applicable to the emergency fix or workaround. |
BPO Testing Overview | |
Test Levels and Types | Purpose |
Acceptance Testing | The BPO performs acceptance testing to verify functionality and operability in a live-like test environment. Acceptance Testing may consist of Operational Acceptance Testing or End-to-End testing. |
Operational Acceptance Testing (OAT) | This is the thorough testing of software to ensure that is operationally acceptable. It tests that: the BPO is able to install, upgrade or cutover to any new or amended system changes. the BPO operational Service levels can be met the functional requirements are met, some amount of change specific and regression tests will be run. the operational performance is satisfactory, testing that systems can support theoretical data maximums of production volumes plus 40%. The security requirements of the software and data can be met. |
Parallel Run Testing (PRT) | Parallel Run Testing is inherent of any OAT. The Release build is deployed in a test production-sized environment. During PRT, the test environment will shadow the operation of the Live environment in near real time. The BPO will compare output from the test with that from the Live systems. Any resulting differences must be explained. PRT provides additional assurance to regression testing, in testing that unchanged functionality is not adversely impacted. |
Integration Testing | Integration Testing consists of: Service Integration, Interface and End to End Testing. The purpose of Integration testing is to demonstrate that all BSC Systems and their interfaces that are affected by a change are integrated correctly. Data flows between affected interfaces must also be correct. |
Participant Testing / Interface Testing | This provides assurance that the BSC Services are correctly integrated. These tests the areas where interfaces, data flows or data transfer mechanisms are affected between the BPO and other BSC Service Providers or Users. This will typically be an interface between the Service Provider and a BSC Party or BSC Party Agent. |
End-to-End Testing | This tests that business processes operate correctly from beginning to end. This may involve multiple systems, interfaces and test participants that are involved in the process being tested. |
Participant Test Service (PTS) | This is a service which the BPO provides to the BSC Parties. It allows Parties to test the interaction of their systems with the BSC Systems. The PTS Guide (Reference 2) provides guidance on making effective use of the Participant Test Service and on booking the service to use. |
Ad Hoc Testing | Elexon may ask for ad hoc testing services to be carried out in any part of the BPO’s testing. This may be used, for example, to test particular areas not covered by the current test types. Other examples include: Providing Test Data Flows for publication Testing connectivity for BSC Service Users Testing Data Changes and System Parameters |
Walkthrough and Page Turn | Changes to processes, systems and documentation are discussed and considered by stepping through the changed areas. This is typically done in a workshop or meeting with appropriate subject matter experts. The purpose of Page Turning is to step through new or changed documents which affect business processes. Page Turning can also indicate whether any process Walkthroughs, which have not already been identified, are required. |
Test Witnessing / Witness Testing | Test witnessing is carried out by Elexon. Witness Testing should include positive (testing system meets requirements) and negative (testing erroneous data and conditions are handled correctly) testing. |
Emergency Fix and Workaround Testing | This means testing of an emergency fix or a workaround to an existing process. An emergency fix or workaround may apply to a defect in Live BSC systems software, for example. After the AMD has provided the software fix or workaround, the BPO Host will carry out elements of Acceptance Testing to gain assurance that the fix/workaround is satisfactory. |
Terms Used | |
Term | Definition |
FAT | Factory Acceptance Testing |
UAT | User Acceptance Testing |
OAT | Operational Acceptance Testing |
PPT | Pre-Production Testing |
CST | Change Specific Testing |
RT | Regression Testing |
IVT | Installation Verification Testing |
Reference | Document |
Reference 1 | Test Management Procedure |
Reference 2 | Participant Test Service Guide |
Intellectual Property Rights, Copyright and Disclaimer The copyright and other intellectual property rights in this document are vested in Elexon or appear with the consent of the copyright owner. These materials are made available for you for the purposes of your participation in the electricity industry. If you have an interest in the electricity industry, you may view, download, copy, distribute, modify, transmit, publish, sell or create derivative works (in whatever format) from this document or in other cases use for personal academic or other non-commercial purposes. All copyright and other proprietary notices contained in the document must be retained on any copy you make. All other rights of the copyright owner not expressly dealt with above are reserved. No representation, warranty or guarantee is made that the information in this document is accurate or complete. While care is taken in the collection and provision of this information, Elexon Limited shall not be liable for any errors, omissions, misstatements or mistakes in any information or damages resulting from the use of this information or action taken in reliance on it. |