Author:
Fortunato Daniel,Jiménez-Navajas Luis,Campos José,Abreu Rui
Abstract
AbstractQuantum software—like classic software—needs to be designed, specified, developed, and, most importantly, tested by developers. Writing tests is a complex, error-prone, and time-consuming task. Due to the particular properties of quantum physics (e.g., superposition), quantum software is inherently more complex to develop and effectively test than classical software. Nevertheless, some preliminary works have tried to bring commonly used classical testing practices for quantum computing to assess and improve the quality of quantum programs. In this chapter, we first gather 16 quantum software testing techniques that have been proposed for the IBM quantum framework, Qiskit. Then, whenever possible, we illustrate the usage of each technique (through the proposed tool that implements it, if available) on a given running example. We showcase that although several works have been proposed to ease the burn of testing quantum software, we are still in the early stages of testing in the quantum world. Researchers should focus on delivering artifacts that are usable without much hindrance to the rest of the community, and the development of quantum benchmarks should be a priority to facilitate reproducibility, replicability, and comparison between different testing techniques.
Publisher
Springer Nature Switzerland
Reference91 articles.
1. Russell, J.: IBM Quantum Update: Q System One Launch, New Collaborators, and QC Center Plans. HPC Wire
2. Collins, H., Nay, C.: IBM Unveils 400 Qubit-Plus Quantum Processor and Next-Generation IBM Quantum. IBM Newsroom
3. Ferreira, F.: An Exploratory Study on the Usage of Quantum Programming Languages. Available at http://hdl.handle.net/10451/56751
4. Hevia, J.L., Peterssen, G., Ebert, C., Piattini, M.: Quantum computing. IEEE Software 38(5), 7–15 (2021). https://doi.org/10.1109/MS.2021.3087755
5. Barrera, A., Guzmán, I., Polo, M., Piattini, M.: Quantum software testing: state of the art. J. Software Evol. Process 35(4), 2419 (2023). https://doi.org/10.1002/smr.2419