Is Bytecode Instrumentation as Good as Source Code Instrumentation: An Empirical Study with Industrial Tools

被引:0
|
作者
Li, Nan [1 ]
Meng, Xin [1 ]
Offutt, Jeff [1 ]
Deng, Lin [1 ]
机构
[1] George Mason Univ, Fairfax, VA 22030 USA
来源
2013 IEEE 24TH INTERNATIONAL SYMPOSIUM ON SOFTWARE RELIABILITY ENGINEERING (ISSRE) | 2013年
关键词
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Branch coverage (BC) is a widely used test criterion that is supported by many tools. Although textbooks and the research literature agree on a standard definition for BC, tools measure BC in different ways. The general strategy is to "instrument" the program by adding statements that count how many times each branch is taken. But the details for how this is done can influence the measurement for whether a set of tests have satisfied BC. For example, the standard definition is based on program source, yet some tools instrument the bytecode to reduce computation cost. A crucial question for the validity of these tools is whether bytecode instrumentation gives results that are the same as, or at least comparable to, source code instrumentation. An answer to this question will help testers decide which tool to use. This research looked at 31 code coverage tools, finding four that support branch coverage. We chose one tool that instruments the bytecode and two that instrument the source. We acquired tests for 105 methods to discover how these three tools measure branch coverage. We then compared coverage on 64 methods, finding that the bytecode instrumentation method reports the same coverage on 49 and lower coverage on 11. We also found that each tool defined branch coverage differently, and what is called branch coverage in the bytecode instrumentation tool actually matches the standard definition for clause coverage.
引用
收藏
页码:380 / 389
页数:10
相关论文
共 50 条
  • [21] Enriching Source Code with Contextual Data for Code Completion Models: An Empirical Study
    van Dam, Tim
    Izadi, Maliheh
    van Deursen, Arie
    2023 IEEE/ACM 20TH INTERNATIONAL CONFERENCE ON MINING SOFTWARE REPOSITORIES, MSR, 2023, : 170 - 182
  • [22] Defect frequency and design patterns:: An empirical study of industrial code
    Vokác, M
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2004, 30 (12) : 904 - 917
  • [23] An Empirical Study of Android Test Generation Tools in Industrial Cases
    Wang, Wenyu
    Li, Dengfeng
    Yang, Wei
    Cao, Yurui
    Zhang, Zhenwen
    Deng, Yuetang
    Xie, Tao
    PROCEEDINGS OF THE 2018 33RD IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMTED SOFTWARE ENGINEERING (ASE' 18), 2018, : 738 - 748
  • [24] Balancing Performance and Productivity for the Development of Dynamic Binary Instrumentation Tools: A Case Study on Arm Systems
    Gorgovan, Cosmin
    Callaghan, Guillermo
    Lujan, Mikel
    PROCEEDINGS OF THE 29TH INTERNATIONAL CONFERENCE ON COMPILER CONSTRUCTION (CC '20), 2020, : 132 - 142
  • [25] An empirical study on the importance of source code entities for requirements traceability
    Nasir Ali
    Zohreh Sharafi
    Yann-Gaël Guéhéneuc
    Giuliano Antoniol
    Empirical Software Engineering, 2015, 20 : 442 - 478
  • [26] An empirical study on the importance of source code entities for requirements traceability
    Ali, Nasir
    Sharafi, Zohreh
    Gueheneuc, Yann-Gael
    Antoniol, Giuliano
    EMPIRICAL SOFTWARE ENGINEERING, 2015, 20 (02) : 442 - 478
  • [27] Labeling source code with information retrieval methods: an empirical study
    Andrea De Lucia
    Massimiliano Di Penta
    Rocco Oliveto
    Annibale Panichella
    Sebastiano Panichella
    Empirical Software Engineering, 2014, 19 : 1383 - 1420
  • [28] Co-evolution of Infrastructure and Source Code - An Empirical Study
    Jiang, Yujuan
    Adams, Bram
    12TH WORKING CONFERENCE ON MINING SOFTWARE REPOSITORIES (MSR 2015), 2015, : 45 - 55
  • [29] An Empirical Study to Evaluate Structural Similarity for Source Code Translation
    Yao, Xulu
    Yap, Moi Hoon
    Zhang, Yanlong
    2019 4TH TECHNOLOGY INNOVATION MANAGEMENT AND ENGINEERING SCIENCE INTERNATIONAL CONFERENCE (TIMES-ICON), 2019,
  • [30] An empirical study of source code detection using image classification
    Hong, Juntong
    Mizuno, Osamu
    Kondo, Masanari
    2019 10TH INTERNATIONAL WORKSHOP ON EMPIRICAL SOFTWARE ENGINEERING IN PRACTICE (IWESEP 2019), 2019, : 1 - 6