1 / 11

Integrating Testing and Analysis

Integrating Testing and Analysis. Patrice Godefroid Leonardo Mariani Andrea Polini Nikolai Tillmann Willem Visser Mike Whalen. Development Cycle Problems. Analysis & Test are run too late in the development cycle Should actively assist development Hard to scale to entire programs

darva
Télécharger la présentation

Integrating Testing and Analysis

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Integrating Testing and Analysis Patrice Godefroid Leonardo Mariani Andrea Polini Nikolai Tillmann Willem Visser Mike Whalen

  2. Development Cycle Problems • Analysis & Test are run too late in the development cycle • Should actively assist development • Hard to scale to entire programs • Running static analysis on 5M SLOC • Difficult to be precise at that scale, leading to many false positives • Goal: find bugs as you make them • Provide immediate feedback to developers in the form of test cases • Use static analysis to generate “useful” tests

  3. FITE: Future Integrated Test Environment Highly incremental (every time a developer modifies a “piece”of code) test and analysis • Pluggable analyses depending on context • Numerical (floating point) precision • Code Performance Use multicore to continually refine analysis computing cores analysis core

  4. Research Problems • Compositional Symbolic Analysis • Preserve concrete and symbolic test cases from “leaf” methods to perform incremental analysis • Provide basis set for system classes • What about non-compositional things? E.g. concurrency • Analysis of Non-Functional Properties • Worst case performance of paths • Numeric precision of paths

  5. Research Problems • Human Factors • Ranking function for test cases • Depending on whether “mocks” were necessary • “Heat map” of goodness • Allow user feedback • 0-5 star rankings • Tool learning algorithms no mocks necessary highly appreciated by developers identified with tool learning algorithms

  6. Research Problems highly testable and analyzable messy code • Human Factors • Incremental analysis produces suggestions for programmers to improve design for • testability, static analyzability, model-checking,… high quality project avenue

  7. Research Problems • Human Factors • Semi-automated assertion and comment generation • Based on exceptional tests defined via static analysis • E.g. non-null requirement for inputs I kindly generate this comment for you, it will be useful for your future life… If you do not add this assertion the life of your system will be in trouble!

  8. New Collaborations

  9. New Collaborations • FITE Whitepaper • Compositional Symbolic Analysis for Immediate Developer Feedback

  10. Paper Titles • FITE: Future Integrated Test Environment • Immediate Developer Feedback through Compositional Symbolic Analysis

  11. Grant Proposal Title • Funding the FITE: Compositional Reasoning for Immediate Developer Gratification

More Related