{"380021":{"#nid":"380021","#data":{"type":"event","title":"SCS Faculty Recruitment Seminar - Milos Gligoric - Regression Testing: Theory and Practice","body":[{"value":"\u003Cp\u003EAbstract:\u003C\/p\u003E\u003Cp\u003EDevelopers often build regression test suites that are\u003C\/p\u003E\u003Cp\u003Eautomatically run for each code revision to check that code changes\u003C\/p\u003E\u003Cp\u003Edid not break any functionality.\u0026nbsp; While regression testing is\u003C\/p\u003E\u003Cp\u003Eimportant, it is also expensive due to both the number of revisions\u003C\/p\u003E\u003Cp\u003Eand the number of tests.\u0026nbsp; For example, Google recently reported that\u003C\/p\u003E\u003Cp\u003Ethey observed a quadratic increase in daily test-suite run time (a\u003C\/p\u003E\u003Cp\u003Elinear increase in the number of revisions per day and a linear\u003C\/p\u003E\u003Cp\u003Eincrease in the number of tests per revision).\u003C\/p\u003E\u003Cp\u003EIn this talk, I present a technique, called Ekstazi, to substantially\u003C\/p\u003E\u003Cp\u003Ereduce test-suite run time.\u0026nbsp; Ekstazi introduces a novel approach to\u003C\/p\u003E\u003Cp\u003Eregression test selection, which runs only a subset of tests whose\u003C\/p\u003E\u003Cp\u003Edependencies may be affected by the latest changes; Ekstazi keeps file\u003C\/p\u003E\u003Cp\u003Edependencies for each test.\u0026nbsp; Ekstazi also speeds up test-suite runs\u003C\/p\u003E\u003Cp\u003Efor software that uses modern distributed version-control systems; by\u003C\/p\u003E\u003Cp\u003Emodeling different branch and merge commands directly, Ekstazi\u003C\/p\u003E\u003Cp\u003Ecomputes test sets that can be significantly smaller than the entire\u003C\/p\u003E\u003Cp\u003Etest suite.\u0026nbsp; I developed Ekstazi for JVM languages and evaluated it on\u003C\/p\u003E\u003Cp\u003Eseveral hundred revisions of 32 open-source projects (totaling 5M\u003C\/p\u003E\u003Cp\u003Elines of code).\u0026nbsp; Ekstazi can reduce test-suite run time an order of\u003C\/p\u003E\u003Cp\u003Emagnitude, including runs for merge revisions.\u0026nbsp; Finally, only a few\u003C\/p\u003E\u003Cp\u003Emonths after the initial release, Ekstazi was adopted and used daily\u003C\/p\u003E\u003Cp\u003Eby many developers from several open-source projects, including Apache\u003C\/p\u003E\u003Cp\u003ECamel, Commons Math, and CXF.\u003C\/p\u003E\u003Cp\u003EBio:\u003C\/p\u003E\u003Cp\u003E\u003C\/p\u003E\u003Cp\u003EMilos Gligoric is a PhD candidate in Computer Science at the University of Illinois at Urbana-Champaign (UIUC).\u0026nbsp; His research interests are in software engineering and formal methods, especially in designing techniques and tools that improve software quality and developers\u0027 productivity.\u0026nbsp; His PhD work has explored test input generation, test quality assessment, testing concurrent code, and regression testing.\u0026nbsp; He won an ACM SIGSOFT Distinguished Paper Award (ICSE 2010), and three of his papers were invited for a journal submission.\u0026nbsp; He was awarded the Saburo Muroga Fellowship (2009), the C.L. and Jane W-S. Liu Award (2012), and the C. W. Gear Outstanding Graduate Award (2014) from the UIUC Department of Computer Science, and the Mavis Future Faculty Fellowship (2014) from the UIUC College of Engineering.\u0026nbsp; He did internships at NASA Ames, Intel, Max Planck Institute for Software Systems, and Microsoft Research.\u0026nbsp; Milos holds a BS (2007) and MS (2009) from the University of Belgrade, Serbia.\u003C\/p\u003E\u003Cp\u003E\u003C\/p\u003E","summary":null,"format":"limited_html"}],"field_subtitle":"","field_summary":"","field_summary_sentence":[{"value":"SCS Faculty Recruitment Seminar - Milos Gligoric - Regression Testing: Theory and Practice"}],"uid":"28150","created_gmt":"2015-02-19 11:05:32","changed_gmt":"2017-04-13 21:20:00","author":"Birney Robert","boilerplate_text":"","field_publication":"","field_article_url":"","field_event_time":{"event_time_start":"2015-02-26T10:00:00-05:00","event_time_end":"2015-02-26T11:00:00-05:00","event_time_end_last":"2015-02-26T11:00:00-05:00","gmt_time_start":"2015-02-26 15:00:00","gmt_time_end":"2015-02-26 16:00:00","gmt_time_end_last":"2015-02-26 16:00:00","rrule":null,"timezone":"America\/New_York"},"extras":["free_food"],"hg_media":{"380031":{"id":"380031","type":"image","title":"Milos Grigoric","body":null,"created":"1449246214","gmt_created":"2015-12-04 16:23:34","changed":"1475894390","gmt_changed":"2016-10-08 02:39:50","alt":"Milos Grigoric","file":{"fid":"75254","name":"milos.jpg","image_path":"\/sites\/default\/files\/images\/milos.jpg","image_full_path":"http:\/\/tlwarc.hg.gatech.edu\/\/sites\/default\/files\/images\/milos.jpg","mime":"image\/jpeg","size":157387,"path_740":"http:\/\/tlwarc.hg.gatech.edu\/sites\/default\/files\/styles\/740xx_scale\/public\/images\/milos.jpg?itok=oEuFe68h"}}},"media_ids":["380031"],"groups":[{"id":"47223","name":"College of Computing"},{"id":"50875","name":"School of Computer Science"}],"categories":[],"keywords":[{"id":"119121","name":"Milos Gligoric"},{"id":"166941","name":"School of Computer Science"},{"id":"166940","name":"SCS"},{"id":"167113","name":"SCS Faculty Recruiting Seminar"}],"core_research_areas":[],"news_room_topics":[],"event_categories":[{"id":"1795","name":"Seminar\/Lecture\/Colloquium"}],"invited_audience":[{"id":"78751","name":"Undergraduate students"},{"id":"78761","name":"Faculty\/Staff"},{"id":"78771","name":"Public"},{"id":"174045","name":"Graduate students"}],"affiliations":[],"classification":[],"areas_of_expertise":[],"news_and_recent_appearances":[],"phone":[],"contact":[{"value":"\u003Cp\u003EEssie Reynolds\u003C\/p\u003E\u003Cp\u003E\u003Ca href=\u0022mailto:ereynold@cc.gatech.edu\u0022\u003Eereynold@cc.gatech.edu\u003C\/a\u003E\u003C\/p\u003E","format":"limited_html"}],"email":[],"slides":[],"orientation":[],"userdata":""}}}