Practical regression test selection with dynamic file dependencies

From AcaWiki
Jump to: navigation, search

Citation: Milos Gligoric, Lamyaa Eloussi, Darko Marinov (13/07/2015) Practical regression test selection with dynamic file dependencies. ISTA 2015 (RSS)
DOI (original publisher): 10.1145/2771783.2771784
Semantic Scholar (metadata): 10.1145/2771783.2771784
Sci-Hub (fulltext): 10.1145/2771783.2771784
Internet Archive Scholar (search for fulltext): Practical regression test selection with dynamic file dependencies
Download: https://dl.acm.org/doi/10.1145/2771783.2771784
Tagged: Computer Science (RSS) software engineering (RSS)

Summary

  • Google TAP can only preform RTS _across_ projects.
    • I don't think this is true anymore. Perhaps they are talking about libraries that compile down to one file.
  • Try to build an RTS usable in practice
    • Use Maven (33%), use JUnit (78%),
  • Total runtime = Analysis + Execution + Collection
  • In Ekstazi, granularity is file/class instead of method.
    • File/class is always superset of method (has extra).
    • Method-granularity often select classes anyway, since the class could override a parent method, and could have final fields.
    • For external libs, "collecting only the classes is not safe, and hence Ekstazi uses files as dependencies". This is not explained.
    • Don't use strace because:
      • Multiple tests could be run on the same JVM process
      • Multiple claseses bundled in one `.jar` file.
      • Instead dynamically instrument the bytecode and monitors the execution
      • Checksum
        • From bytecode, not source; robust to syntactic sugar.
        • Omit debug info
      • In the future, use DB for dep graph.


Elsewhere