Mock object creation for test factoring
Proceedings of the 5th ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering
Finding Latent Code Errors via Machine Learning over Program Executions
Proceedings of the 26th International Conference on Software Engineering
An experimental evaluation of continuous testing during development
ISSTA '04 Proceedings of the 2004 ACM SIGSOFT international symposium on Software testing and analysis
ACM SIGPLAN Notices
Proceedings of the 27th international conference on Software engineering
Automatic test factoring for java
Proceedings of the 20th IEEE/ACM international Conference on Automated software engineering
Prioritizing JUnit Test Cases: An Empirical Assessment and Cost-Benefits Analysis
Empirical Software Engineering
Proceedings of the 28th international conference on Software engineering
Finding failure-inducing changes in java programs using change classification
Proceedings of the 14th ACM SIGSOFT international symposium on Foundations of software engineering
Source Code Analysis: A Road Map
FOSE '07 2007 Future of Software Engineering
New Frontiers of Reverse Engineering
FOSE '07 2007 Future of Software Engineering
Reducing the Costs of Bounded-Exhaustive Testing
FASE '09 Proceedings of the 12th International Conference on Fundamental Approaches to Software Engineering: Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2009
A Test-oriented Embedded System Production Methodology
Journal of Signal Processing Systems
Measuring testing as a distributed component of the software life cycle
Journal of Computational Methods in Sciences and Engineering
Electronic Notes in Theoretical Computer Science (ENTCS)
A prioritization approach for software test cases based on Bayesian networks
FASE'07 Proceedings of the 10th international conference on Fundamental approaches to software engineering
EZUNIT: a framework for associating failed unit tests with potential programming errors
XP'07 Proceedings of the 8th international conference on Agile processes in software engineering and extreme programming
Automated software testing as a service
Proceedings of the 1st ACM symposium on Cloud computing
Test-driven roles for pair programming
Proceedings of the 2010 ICSE Workshop on Cooperative and Human Aspects of Software Engineering
Speculative analysis: exploring future development states of software
Proceedings of the FSE/SDP workshop on Future of software engineering research
FITE: future integrated testing environment
Proceedings of the FSE/SDP workshop on Future of software engineering research
Collabode: collaborative coding in the browser
Proceedings of the 4th International Workshop on Cooperative and Human Aspects of Software Engineering
eXpress: guided path exploration for efficient regression test generation
Proceedings of the 2011 International Symposium on Software Testing and Analysis
Proactive detection of collaboration conflicts
Proceedings of the 19th ACM SIGSOFT symposium and the 13th European conference on Foundations of software engineering
Role-based interfaces for collaborative software development
Proceedings of the 24th annual ACM symposium adjunct on User interface software and technology
Real-time collaborative coding in a web IDE
Proceedings of the 24th annual ACM symposium on User interface software and technology
Analysing requirements in a case study of pairing
Proceedings of the 1st Workshop on Agile Requirements Engineering
CoExist: overcoming aversion to change
Proceedings of the 8th symposium on Dynamic languages
IFRit: interference-free regions for dynamic data-race detection
Proceedings of the ACM international conference on Object oriented programming systems languages and applications
Towards run-time testing of dynamic adaptive systems
Proceedings of the 8th International Symposium on Software Engineering for Adaptive and Self-Managing Systems
Making offline analyses continuous
Proceedings of the 2013 9th Joint Meeting on Foundations of Software Engineering
Hi-index | 0.00 |
Testing is often performed frequently during developmentto ensure software reliability by catching regressionerrors quickly. However, stopping frequently to test alsowastes time by holding up development progress. User studieson real development projects indicate that these twosources of wasted time account for 10-15% of developmenttime. These measurements use a novel technique for computingthe wasted extra development time incurred by a delayin discovering a regression error.We present a model of developer behavior that infersdeveloper beliefs from developer behavior, and that predictsdeveloper behavior in new environments-in particular,when changing testing methodologies or tools to reducewasted time. Changing test ordering or reporting reduceswasted time by 4-41% in our case study. Changingthe frequency with which tests are run can reduce wastedtime by 31-82% (but developers cannot know the ideal frequencyexcept after the fact). We introduce and evaluate anew technique, continuous testing, that uses spare CPU resourcesto continuously run tests in the background, providingrapid feedback about test failures as as source code isedited. Continuous testing reduced wasted time by 92-98%,a substantial improvement over the other approaches.We have integrated continuous testing into two developmentenvironments, and are beginning user studies to evaluateits efficacy. We believe it has the potential to reduce thecost and improve the efficacy of testing and, as a result, toimprove the reliability of delivered systems.