Path-Sensitive Oracle Data Selection via Static Analysis

Electronics ◽  
2021 ◽  
Vol 10 (2) ◽  
pp. 110
Author(s):  
Mingzhe Zhang ◽  
Yunzhan Gong ◽  
Yawen Wang ◽  
Dahai Jin

A test oracle is a procedure that is used during testing to determine whether software behaves correctly or not. One of most important tasks for a test oracle is to choose oracle data (the set of variables monitored during testing) to observe. However, most literature on test oracles has focused either on formal specification generation or on automated test oracle construction, whereas little work exists for supporting oracle data selection. In this paper, we present a path-sensitive approach, PSODS (path-sensitive oracle data selection), to automatically select oracle data for use by expected value oracles. PSODS ranks paths according to the possibility that potential faults may exist in them, and the ranked paths help testers determine which oracle data should be considered first. To select oracle data for each path, we introduce quantity and quality analysis of oracle data, which use static analysis to estimate oracle data for their substitution capability and fault-detection capability. Quantity analysis can reduce the number of oracle data. Quality analysis can rank oracle data based on their fault-detection capability. By using quantity and quality analysis, PSODS reduces the cost of oracle construction and improves fault-detection efficiency and effectiveness. We have implemented our approach and applied it to a real-world project. The experimental results show that PSODS is efficient in helping testers construct test oracles. Moreover, the oracle datasets produced by our approach are more effective and efficient than output-only oracles at detecting faults.


2021 ◽  
Vol 13 (9) ◽  
pp. 1746
Author(s):  
Zhixiong Chen ◽  
Xiushu Qie ◽  
Juanzhen Sun ◽  
Xian Xiao ◽  
Yuxin Zhang ◽  
...  

This study investigates the characteristics of space-borne Lightning Mapping Imager (LMI) lightning products and their relationships with cloud properties using ground-based total lightning observations from the Beijing Broadband Lightning Network (BLNET) and cloud information from S-band Doppler radar data. LMI showed generally consistent lightning spatial distributions with those of BLNET, and yielded a considerable lightning detection capability over regions with complex terrain. The ratios between the LMI events, groups and flashes were approximately 9:3:1, and the number of LMI-detected flashes was roughly one order of magnitude smaller than the number of BLNET-detected flashes. However, in different convective episodes, the LMI detection capability was likely to be affected by cloud properties, especially in strongly electrified convective episodes associated with frequent lightning discharging and thick cloud depth. As a result, LMI tended to detect lightning flashes located in weaker and shallower cloud portions associated with fewer cloud shielding effects. With reference to the BLNET total lightning data as the ground truth of observation (both intra-cloud lightning and cloud-to-ground lightning flashes), the LMI event-based detection efficiency (DE) was estimated to reach 28% under rational spatiotemporal matching criteria (1.5 s and 65 km) over Beijing. In terms of LMI flash-based DE, it was much reduced compared with event-based DE. The LMI flash-based ranged between 1.5% and 3.5% with 1.5 s and 35–65 km matching scales. For 330 ms and 35 km, the spatiotemporal matching criteria used to evaluate Geostationary Lightning Mapper (GLM), the LMI flash-based DE was smaller (<1%).



2022 ◽  
pp. 1-1
Author(s):  
Abdelrahman Khalil ◽  
Khaled F. Aljanaideh ◽  
Mohammad Al Janaideh


Author(s):  
Haakon Beckman ◽  
Lasse Warholm ◽  
Jan Endresen


Author(s):  
Abdelrahman Khalil ◽  
Khaled F. Aljanaideh ◽  
Geoff Rideout ◽  
Mohammad Al Janaideh




1993 ◽  
Vol 19 (6) ◽  
pp. 533-553 ◽  
Author(s):  
D.J. Richardson ◽  
M.C. Thompson


Author(s):  
RAKESH SHUKLA ◽  
PAUL STROOPER ◽  
DAVID CARRINGTON

Statistical testing involves the testing of software by selecting test cases from a probability distribution that is intended to represent the software's operational usage. In this paper, we describe and evaluate a framework for statistical testing of software components that incorporates test case execution and output evaluation. An operational profile and a test oracle are essential for the statistical testing of software components because they are used for test case generation and output evaluation respectively. An operational profile is a set of input events and their associated probabilities of occurrence expected in actual operation. A test oracle is a mechanism that is used to check the results of test cases. We present four types of operational profiles and three types of test oracles, and empirically evaluate them using the framework by applying them to two software components. The results show that while simple operational profiles may be effective for some components, more sophisticated profiles are needed for others. For the components that we tested, the fault-detecting effectiveness of the test oracles was similar.



Sign in / Sign up

Export Citation Format

Share Document