Fabrik: a visual programming environment
OOPSLA '88 Conference proceedings on Object-oriented programming systems, languages and applications
Automated assistance for program restructuring
ACM Transactions on Software Engineering and Methodology (TOSEM)
Refactoring object-oriented frameworks
Refactoring object-oriented frameworks
The SCIRun computational steering software system
Modern software tools for scientific computing
Dynamically discovering likely program invariants to support program evolution
Proceedings of the 21st international conference on Software engineering
Refactoring: improving the design of existing code
Refactoring: improving the design of existing code
Building awareness of system testing issues
ICSE '85 Proceedings of the 8th international conference on Software engineering
Art of Software Testing
Efficient path conditions in dependence graphs
Proceedings of the 24th International Conference on Software Engineering
IEEE Software
Improving test suites via operational abstraction
Proceedings of the 25th International Conference on Software Engineering
Dynamically discovering likely program invariants
Dynamically discovering likely program invariants
Bogor: an extensible and highly-modular software model checking framework
Proceedings of the 9th European software engineering conference held jointly with 11th ACM SIGSOFT international symposium on Foundations of software engineering
Specifying and Testing Software Components using ADL
Specifying and Testing Software Components using ADL
An experimental evaluation of continuous testing during development
ISSTA '04 Proceedings of the 2004 ACM SIGSOFT international symposium on Software testing and analysis
Test input generation with java PathFinder
ISSTA '04 Proceedings of the 2004 ACM SIGSOFT international symposium on Software testing and analysis
Efficient incremental algorithms for dynamic detection of likely invariants
Proceedings of the 12th ACM SIGSOFT twelfth international symposium on Foundations of software engineering
DART: directed automated random testing
Proceedings of the 2005 ACM SIGPLAN conference on Programming language design and implementation
Proceedings of the 10th European software engineering conference held jointly with 13th ACM SIGSOFT international symposium on Foundations of software engineering
CUTE: a concolic unit testing engine for C
Proceedings of the 10th European software engineering conference held jointly with 13th ACM SIGSOFT international symposium on Foundations of software engineering
Automatically Identifying Special and Common Unit Tests for Object-Oriented Programs
ISSRE '05 Proceedings of the 16th IEEE International Symposium on Software Reliability Engineering
Symstra: a framework for generating object-oriented unit tests using symbolic execution
TACAS'05 Proceedings of the 11th international conference on Tools and Algorithms for the Construction and Analysis of Systems
Eclat: automatic generation and classification of test inputs
ECOOP'05 Proceedings of the 19th European conference on Object-Oriented Programming
Software Testing Research: Achievements, Challenges, Dreams
FOSE '07 2007 Future of Software Engineering
Experimental assessment of random testing for object-oriented software
Proceedings of the 2007 international symposium on Software testing and analysis
Contract driven development = test driven development - writing test cases
Proceedings of the the 6th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering
Differential testing: a new approach to change detection
Proceedings of the the 6th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering
Differential testing: a new approach to change detection
The 6th Joint Meeting on European software engineering conference and the ACM SIGSOFT symposium on the foundations of software engineering: companion papers
Automated Software Engineering
From developer's head to developer tests: characterization, theories, and preventing one more bug
Companion to the 22nd ACM SIGPLAN conference on Object-oriented programming systems and applications companion
The Daikon system for dynamic detection of likely invariants
Science of Computer Programming
DSD-Crasher: A hybrid analysis tool for bug finding
ACM Transactions on Software Engineering and Methodology (TOSEM)
DySy: dynamic symbolic execution for invariant inference
Proceedings of the 30th international conference on Software engineering
BERT: BEhavioral Regression Testing
WODA '08 Proceedings of the 2008 international workshop on dynamic analysis: held in conjunction with the ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA 2008)
Whispec: white-box testing of libraries using declarative specifications
LCSD '07 Proceedings of the 2007 Symposium on Library-Centric Software Design
A comparative study of programmer-written and automatically inferred contracts
Proceedings of the eighteenth international symposium on Software testing and analysis
Predicting Effectiveness of Automatic Testing Tools
ASE '08 Proceedings of the 2008 23rd IEEE/ACM International Conference on Automated Software Engineering
DiffGen: Automated Regression Unit-Test Generation
ASE '08 Proceedings of the 2008 23rd IEEE/ACM International Conference on Automated Software Engineering
GenUTest: a unit test and mock aspect generation tool
HVC'07 Proceedings of the 3rd international Haifa verification conference on Hardware and software: verification and testing
Pex: white box test generation for .NET
TAP'08 Proceedings of the 2nd international conference on Tests and proofs
Mutation-driven generation of unit tests and oracles
Proceedings of the 19th international symposium on Software testing and analysis
On test repair using symbolic execution
Proceedings of the 19th international symposium on Software testing and analysis
Scenario-based and value-based specification mining: better together
Proceedings of the IEEE/ACM international conference on Automated software engineering
Future of developer testing: building quality in code
Proceedings of the FSE/SDP workshop on Future of software engineering research
QuickSpec: guessing formal specifications using testing
TAP'10 Proceedings of the 4th international conference on Tests and proofs
ReAssert: a tool for repairing broken unit tests
Proceedings of the 33rd International Conference on Software Engineering
Generating parameterized unit tests
Proceedings of the 2011 International Symposium on Software Testing and Analysis
Enriching dynamically detected invariants in the case of arrays
ICCSA'11 Proceedings of the 2011 international conference on Computational science and Its applications - Volume Part V
On possibility of conditional invariant detection
KES'11 Proceedings of the 15th international conference on Knowledge-based and intelligent information and engineering systems - Volume Part II
Understanding user understanding: determining correctness of generated program invariants
Proceedings of the 2012 International Symposium on Software Testing and Analysis
Proceedings of the 34th International Conference on Software Engineering
JSART: javascript assertion-based regression testing
ICWE'12 Proceedings of the 12th international conference on Web Engineering
Dynamic property mining for embedded software
Proceedings of the eighth IEEE/ACM/IFIP international conference on Hardware/software codesign and system synthesis
Pathways to technology transfer and adoption: achievements and challenges (mini-tutorial)
Proceedings of the 2013 International Conference on Software Engineering
Hi-index | 0.00 |
Developer testing is of one of the most effective strategies for improving the quality of software, reducing its cost, and accelerating its development. Despite its widely recognized benefits, developer testing is practiced by only a minority of developers. The slow adoption of developer testing is primarily due to the lack of tools that automate some of the more tedious and time-consuming aspects of this practice. Motivated by the need for a solution, and helped and inspired by the research in software test automation, we created a developer testing tool based on software agitation. Software agitation is a testing technique that combines the results of research in test-input generation and dynamic invariant detection. We implemented software agitation in a commercial testing tool called Agitator. This paper gives a high-level overview of software agitation and its implementation in Agitator, focusing on the lessons and challenges of leveraging and applying the results of research to the implementation of a commercial product.