- document
-
Zaidman, A.E. (author), Khatami, Ali (author)Software engineers employ a variety of approaches to ensure the quality of software systems, including software testing, modern code review, automated static analysis, build automation, and continuous integration. To make effective decisions regarding quality assurance (QA), software engineers need to have an awareness of (1) the QA approaches...conference paper 2023
- document
-
Brandt, C.E. (author), Wang, D. (author), Zaidman, A.E. (author)Test amplification generates new tests by mutating existing, developer-written tests and keeping those tests that improve the coverage of the test suite. Current amplification tools focus on starting from a specific test and propose coverage improvements all over a software project, requiring considerable effort from the software engineer to...conference paper 2023
- document
-
Botocan, Cristian Alexandru (author), Deshmukh, Piyush (author), Makridis, Pavlos (author), Huidobro, Jorge Romeu (author), Sundarrajan, Mathanrajan (author), Aniche, MaurĂcio (author), Zaidman, A.E. (author)Software testing is one of the most important aspects of modern software development. To ensure the quality of the software, developers should ideally write and execute automated tests regularly as their code-base evolves. TestKnight, a plugin for the IntelliJ IDEA integrated development environment (IDE), aims to help Java developers improve...conference paper 2022
- document
-
Boone, Casper (author), Brandt, C.E. (author), Zaidman, A.E. (author)The most common reason for Continuous Integration (CI) builds to break is failing tests. When a build breaks, a developer often has to scroll through hundreds to thousands of log lines to find which test is failing and why. Finding the issue is a tedious process that relies on a developer's experience and increases the cost of software testing....conference paper 2022