Practical regression test selection with dynamic file dependencies
From AcaWiki
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.