Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Lamyaa Eloussi

dblp:147/4361 · DBLP profile ↗
← Back
7ranked-venue papers
0as first author
0since 2021 · last 2019
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 7Theory of computation · 1

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
6 papers
Software testing · 55% Concurrent programming · 12% Programming languages and type systems · 6%

Topics — the 12 heaviest of 13, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Software testing
regression testing
0.842015
Practical regression test selection with dynamic file dependencies · ISSTA 2015
Ekstazi: Lightweight Test Selection · ICSE (2) 2015
An empirical analysis of flaky tests · SIGSOFT FSE 2014
Software testing › regression testing
regression test selection
0.632015
Practical regression test selection with dynamic file dependencies · ISSTA 2015
Ekstazi: Lightweight Test Selection · ICSE (2) 2015
Regression Test Selection for Distributed Software Histories · CAV 2014
Software testing › flaky test
flaky test detection
0.312018
DeFlaker: automatically detecting flaky tests · ICSE 2018
Program verification
annotation inference
0.212015
Region and Effect Inference for Safe Parallelism (T) · ASE 2015
Concurrent programming › deterministic execution
deterministic parallelism
0.212015
Region and Effect Inference for Safe Parallelism (T) · ASE 2015
Concurrent programming › concurrency correctness
safe parallelism
0.212015
Region and Effect Inference for Safe Parallelism (T) · ASE 2015
Program analysis
static analysis
0.212015
Region and Effect Inference for Safe Parallelism (T) · ASE 2015
Programming languages and type systems
type inference
0.212015
Region and Effect Inference for Safe Parallelism (T) · ASE 2015
Software testing
flaky test
0.212014
An empirical analysis of flaky tests · SIGSOFT FSE 2014
Empirical software engineering
mining software repositories
0.212014
An empirical analysis of flaky tests · SIGSOFT FSE 2014
Debugging and program repair
root cause analysis
0.212014
An empirical analysis of flaky tests · SIGSOFT FSE 2014
Software maintenance and evolution
software dependencies
0.112015
Ekstazi: Lightweight Test Selection · ICSE (2) 2015

Methods — techniques the papers use, named apart from their topics

dynamic dependency tracking · 0.4constraint satisfaction · 0.2empirical study · 0.2distributed version history analysis · 0.2commit analysis · 0.2
YearPublicationVenuePosition
2019 Region and effect inference for safe parallelism
Alexandros Tzannes, Stephen Heumann, Lamyaa Eloussi, Mohsen Vakilian, Vikram S. Adve, Michael Han 0003
Autom. Softw. Eng.3
2018 DeFlaker: automatically detecting flaky tests
abstract
Developers often run tests to check that their latest changes to a code repository did not break any previously working functionality. Ideally, any new test failures would indicate regressions caused by the latest changes. However, some test failures may not be due to the latest changes but due to non-determinism in the tests, popularly called flaky tests. The typical way to detect flaky tests is to rerun failing tests repeatedly. Unfortunately, rerunning failing tests can be costly and can slow down the development cycle.
Jonathan Bell 0001, Owolabi Legunsen, Michael Hilton 0001, Lamyaa Eloussi, Tifany Yung, Darko Marinov
ICSE4
2015 Ekstazi: Lightweight Test Selection
abstract
Regression testing is a crucial, but potentially time-consuming, part of software development. Regression test selection (RTS), which runs only a subset of tests, was proposed over three decades ago as a promising way to speed up regression testing. However, RTS has not been widely adopted in practice. We propose EKSTAZI , a lightweight RTS tool, that can integrate well with testing frameworks and build systems, increasing the chance for adoption. EKSTAZI tracks dynamic dependencies of tests on files and requires no integration with version-control systems. We implemented EKSTAZI for Java+JUnit and Scala+ScalaTest, and evaluated it on 615 revisions of 32 open-source projects (totaling almost 5M LOC). The results show that EKSTAZI reduced the end-to-end testing time by 32% on average compared to executing all tests. EKSTAZI has been adopted for day-to-day use by several Apache developers. The demo video for EKSTAZI can be found at http://www.youtube.com/watch?v=jE8K5_UCP28.
Milos Gligoric 0001, Lamyaa Eloussi, Darko Marinov
ICSE (2)2
2015 Practical regression test selection with dynamic file dependencies
abstract
Regression testing is important but can be time-intensive. One approach to speed it up is regression test selection (RTS), which runs only a subset of tests. RTS was proposed over three decades ago but has not been widely adopted in practice. Meanwhile, testing frameworks, such as JUnit, are widely adopted and well integrated with many popular build systems. Hence, integrating RTS in a testing framework already used by many projects would increase the likelihood that RTS is adopted. We propose a new, lightweight RTS technique, called Ekstazi, that can integrate well with testing frameworks. Ekstazi tracks dynamic dependencies of tests on files, and unlike most prior RTS techniques, Ekstazi requires no integration with version-control systems. We implemented Ekstazi for Java and JUnit, and evaluated it on 615 revisions of 32 open-source projects (totaling almost 5M LOC) with shorter- and longer-running test suites. The results show that Ekstazi reduced the end-to-end testing time 32% on average, and 54% for longer-running test suites, compared to executing all tests. Ekstazi also has lower end-to-end time than the existing techniques, despite the fact that it selects more tests. Ekstazi has been adopted by several popular open source projects, including Apache Camel, Apache Commons Math, and Apache CXF.
Milos Gligoric 0001, Lamyaa Eloussi, Darko Marinov
ISSTA2
2015 Region and Effect Inference for Safe Parallelism (T)
abstract
In this paper, we present the first full regions-and-effects inference algorithm for explicitly parallel fork-join programs. We infer annotations inspired by Deterministic Parallel Java (DPJ) for a type-safe subset of C++. We chose the DPJ annotations because they give the strongest safety guarantees of any existing concurrency-checking approach we know of, static or dynamic, and it is also the most expressive static checking system we know of that gives strong safety guarantees. This expressiveness, however, makes manual annotation difficult and tedious, which motivates the need for automatic inference, but it also makes the inference problem very challenging: the code may use region polymorphism, imperative updates with complex aliasing, arbitrary recursion, hierarchical region specifications, and wildcard elements to describe potentially infinite sets of regions. We express the inference as a constraint satisfaction problem and develop, implement, and evaluate an algorithm for solving it. The region and effect annotations inferred by the algorithm constitute a checkable proof of safe parallelism, and it can be recorded both for documentation and for fast and modular safety checking.
Alexandros Tzannes, Stephen Heumann, Lamyaa Eloussi, Mohsen Vakilian, Vikram S. Adve, Michael Han 0003
ASE3
2014 Regression Test Selection for Distributed Software Histories
Milos Gligoric 0001, Rupak Majumdar, Rohan Sharma, Lamyaa Eloussi, Darko Marinov
CAV4
2014 An empirical analysis of flaky tests
abstract
Regression testing is a crucial part of software development. It checks that software changes do not break existing functionality. An important assumption of regression testing is that test outcomes are deterministic: an unmodified test is expected to either always pass or always fail for the same code under test. Unfortunately, in practice, some tests often called flaky tests—have non-deterministic outcomes. Such tests undermine the regression testing as they make it difficult to rely on test results. We present the first extensive study of flaky tests. We study in detail a total of 201 commits that likely fix flaky tests in 51 open-source projects. We classify the most common root causes of flaky tests, identify approaches that could manifest flaky behavior, and describe common strategies that developers use to fix flaky tests. We believe that our insights and implications can help guide future research on the important topic of (avoiding) flaky tests.
Qingzhou Luo, Farah Hariri, Lamyaa Eloussi, Darko Marinov
SIGSOFT FSE3