A software engineering perspective on engineering machine learning systems: State of the art and challenges

G Giray - Journal of Systems and Software, 2021 - Elsevier
Context: Advancements in machine learning (ML) lead to a shift from the traditional view of
software development, where algorithms are hard-coded by humans, to ML systems …

Assessing and restoring reproducibility of Jupyter notebooks

J Wang, T Kuo, L Li, A Zeller - Proceedings of the 35th IEEE/ACM …, 2020 - dl.acm.org
Jupyter notebooks---documents that contain live code, equations, visualizations, and
narrative text---now are among the most popular means to compute, present, discuss and …

Flakify: A black-box, language model-based predictor for flaky tests

S Fatima, TA Ghaleb, L Briand - IEEE Transactions on Software …, 2022 - ieeexplore.ieee.org
Software testing assures that code changes do not adversely affect existing functionality.
However, a test case can be flaky, ie, passing and failing across executions, even for the …

Exploring better black-box test case prioritization via log analysis

Z Chen, J Chen, W Wang, J Zhou, M Wang… - ACM Transactions on …, 2023 - dl.acm.org
Test case prioritization (TCP) has been widely studied in regression testing, which aims to
optimize the execution order of test cases so as to detect more faults earlier. TCP has been …

What helped, and what did not? an evaluation of the strategies to improve continuous integration

X Jin, F Servant - … IEEE/ACM 43rd International Conference on …, 2021 - ieeexplore.ieee.org
Continuous integration (CI) is a widely used practice in modern software engineering.
Unfortunately, it is also an expensive practice-Google and Mozilla estimate their CI systems …

Flaky test detection in Android via event order exploration

Z Dong, A Tiwari, XL Yu, A Roychoudhury - Proceedings of the 29th ACM …, 2021 - dl.acm.org
Validation of Android apps via testing is difficult owing to the presence of flaky tests. Due to
non-deterministic execution environments, a sequence of events (a test) may lead to …

How Useful is Code Change Information for Fault Localization in Continuous Integration?

AR Chen, TH Chen, J Chen - Proceedings of the 37th IEEE/ACM …, 2022 - dl.acm.org
Continuous integration (CI) is the process in which code changes are automatically
integrated, built, and tested in a shared repository. In CI, developers frequently merge and …

Transforming test suites into croissants

Y Chen, A Yildiz, D Marinov… - Proceedings of the 32nd …, 2023 - dl.acm.org
Software developers often rely on regression testing to ensure that recent changes made to
the source code do not introduce bugs. Flaky tests, which non-deterministically pass or fail …

The impact of flaky tests on historical test prioritization on chrome

E Fallahzadeh, PC Rigby - … of the 44th International Conference on …, 2022 - dl.acm.org
Test prioritization algorithms prioritize probable failing tests to give faster feedback to
developers in case a failure occurs. Test prioritization approaches that use historical failures …

Just-in-time flaky test detection via abstracted failure symptom matching

G An, J Yoon, T Bach, J Hong, S Yoo - arXiv preprint arXiv:2310.06298, 2023 - arxiv.org
We report our experience of using failure symptoms, such as error messages or stack traces,
to identify flaky test failures in a Continuous Integration (CI) pipeline for a large industrial …