TY - GEN
T1 - In-place metamorphic testing and exploration
AU - Zhou, Zhi Quan
AU - Zhu, Junting
AU - Chen, Tsong Yueh
AU - Towey, Dave
N1 - Funding Information:
This work was supported in part by Morphick Solutions Pty Ltd, Australia, by the National Natural Science Foundation of China (Grant No. 61872167), by a Western River entrepreneurship grant, by the ARC DP210102447, and by an Australian Government Research Training Program scholarship.
Publisher Copyright:
© 2022 ACM.
PY - 2022
Y1 - 2022
N2 - In this paper, we consider the testing of software whose input involves a data stream, such as in video analysis applications. To address the oracle problem in testing this kind of software, existing metamorphic testing (MT) and metamorphic exploration (ME) techniques typically generate both source and follow-up input streams. In contrast, we propose a different strategy: an inplace method. Instead of examining relations among multiple input streams, our method works on a finer granularity by investigating relations among the data frames within a single input stream - such as the relations among the image frames within a video stream - treating a frame, rather than a stream, as a test case. Because our method does not generate any follow-up input stream, or change any frame values, it is also suitable for runtime error detection. We have applied this in-place method to testing video streams in Baidu Apollo, a real-life autonomous driving system. Our study identified previously-unknown obstacle perception failures in the camera perception module, including both undetected and incorrectly-detected objects. The empirical results show that our approach is practical, and readily applicable to industrial-scale systems that include (but are not limited to) the computer vision domain.
AB - In this paper, we consider the testing of software whose input involves a data stream, such as in video analysis applications. To address the oracle problem in testing this kind of software, existing metamorphic testing (MT) and metamorphic exploration (ME) techniques typically generate both source and follow-up input streams. In contrast, we propose a different strategy: an inplace method. Instead of examining relations among multiple input streams, our method works on a finer granularity by investigating relations among the data frames within a single input stream - such as the relations among the image frames within a video stream - treating a frame, rather than a stream, as a test case. Because our method does not generate any follow-up input stream, or change any frame values, it is also suitable for runtime error detection. We have applied this in-place method to testing video streams in Baidu Apollo, a real-life autonomous driving system. Our study identified previously-unknown obstacle perception failures in the camera perception module, including both undetected and incorrectly-detected objects. The empirical results show that our approach is practical, and readily applicable to industrial-scale systems that include (but are not limited to) the computer vision domain.
KW - Autonomous driving
KW - Baidu Apollo
KW - metamorphic exploration
KW - metamorphic relation
KW - metamorphic runtime checking
KW - metamorphic testing
KW - object detection
KW - oracle problem
KW - stream and frame
KW - video content analysis
UR - http://www.scopus.com/inward/record.url?scp=85135610127&partnerID=8YFLogxK
U2 - 10.1145/3524846.3527334
DO - 10.1145/3524846.3527334
M3 - Conference contribution
AN - SCOPUS:85135610127
T3 - Proceedings - 7th International Workshop on Metamorphic Testing, MET 2022
SP - 1
EP - 6
BT - Proceedings - 7th International Workshop on Metamorphic Testing, MET 2022
PB - Institute of Electrical and Electronics Engineers Inc.
T2 - 7th IEEE/ACM International Workshop on Metamorphic Testing, MET 2022
Y2 - 9 May 2022
ER -