QuSBT: Search-Based Testing of Quantum Programs

04/18/2022
by   Xinyi Wang, et al.
0

Generating a test suite for a quantum program such that it has the maximum number of failing tests is an optimization problem. For such optimization, search-based testing has shown promising results in the context of classical programs. To this end, we present a test generation tool for quantum programs based on a genetic algorithm, called QuSBT (Search-based Testing of Quantum Programs). QuSBT automates the testing of quantum programs, with the aim of finding a test suite having the maximum number of failing test cases. QuSBT utilizes IBM's Qiskit as the simulation framework for quantum programs. We present the tool architecture in addition to the implemented methodology (i.e., the encoding of the search individual, the definition of the fitness function expressing the search problem, and the test assessment w.r.t. two types of failures). Finally, we report results of the experiments in which we tested a set of faulty quantum programs with QuSBT to assess its effectiveness. Repository (code and experimental results): https://github.com/Simula-COMPLEX/qusbt-tool Video: https://youtu.be/3apRCtluAn4

READ FULL TEXT

page 1

page 2

page 3

page 4

research
08/31/2023

QuCAT: A Combinatorial Testing Tool for Quantum Software

With the increased developments in quantum computing, the availability o...
research
08/22/2021

Bugs4Q: A Benchmark of Real Bugs for Quantum Programs

Realistic benchmarks of reproducible bugs and fixes are vital to good ex...
research
10/16/2018

QuanFuzz: Fuzz Testing of Quantum Program

Nowadays, quantum program is widely used and quickly developed. However,...
research
12/23/2020

Software Pipelining for Quantum Loop Programs

We propose a method for performing software pipelining on quantum for-lo...
research
09/24/2021

Test Scenario Generation for Context-Oriented Programs

Their highly adaptive nature and the combinatorial explosion of possible...
research
02/29/2020

ADF-GA: Data Flow Criterion Based Test Case Generation for Ethereum Smart Contracts

Testing is an important technique to improve the quality of Ethereum sma...
research
06/30/2023

Testing Multi-Subroutine Quantum Programs: From Unit Testing to Integration Testing

Quantum computing has emerged as a promising field with the potential to...

Please sign up or login with your details

Forgot password? Click here to reset