Evaluating Unit Testing Practices in R PackagesTechnical Track
Fri 28 May 2021 23:30 - 23:50 at Blended Sessions Room 3 - 4.2.3. Testing: 3rd Party Software
Testing Technical Debt (TTD) occurs due to shortcuts (non-optimal decisions) taken about testing; it is the test dimension of technical debt. R is a package-based programming ecosystem that provides an easy way to install third-party code, datasets, tests, documentation and examples. R’s package structure makes it especially vulnerable to TTD because errors present in a package can transitively affect all packages and scripts that depend on it. Thus, R packages’ TTD can effectively become a threat to the validity of all analysis written in R that rely on potentially faulty code. This two-part study provides the first analysis in this area. First, 177 systematically-selected, open-source R packages were mined and analysed to address quality of testing, testing goals, and identify potential TTD sources. Second, a survey addressed how R package developers perceive testing and face its challenges (response rate of 19.4%). Results show that testing in R packages does not have good quality; the most common smells are inadequate and obscure unit testing, improper asserts, inexperienced testes and improper test design. Furthermore, skilled developers still face challenges such as time constraints, emphasis on development rather than testing, poor tool documentation and a steep learning curve.
Fri 28 MayDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
23:30 - 00:30 | |||
23:30 20mPaper | Evaluating Unit Testing Practices in R PackagesTechnical Track Technical Track Melina Vidoni RMIT University Pre-print Media Attached | ||
23:50 20mPaper | Data-Oriented Differential Testing of Object-Relational Mapping SystemsTechnical Track Technical Track Thodoris Sotiropoulos Athens University of Economics and Business, Stefanos Chaliasos Athens University of Economics and Business, Vaggelis Atlidakis Columbia University, Dimitris Mitropoulos National and Kapodistrian University of Athens, Diomidis Spinellis Athens University of Economics and Business & TU Delft Pre-print Media Attached | ||
00:10 20mPaper | A Practical Approach to Verification of Floating-Point C/C++ Programs with math.h/cmath FunctionsJournal-First Journal-First Papers Roberto Bagnara University of Parma, BUGSENG srl, Michele Chiari Politecnico di Milano, Roberta Gori University of Pisa, Abramo Bagnara BUGSENG srl Link to publication DOI Pre-print Media Attached |