词条 | Delta debugging |
释义 |
}}Delta Debugging is a methodology to automate the debugging of programs using a scientific approach of hypothesis-trial-result loop. This methodology was first developed by Andreas Zeller of the Saarland University in 1999.[1] In practice, the Delta Debugging algorithm builds on unit testing to isolate failure causes automatically - by systematically narrowing down failure-inducing circumstances until a minimal set remains. For example, if you can supply a test case that will produce the bug you are looking for, then you can feed that to the Delta Debugging algorithm, which will then simply try to trim useless functions and lines of code that are not needed to reproduce the bug, until a 1-minimal program is found. Delta Debugging has been applied to isolate failure-inducing program input (e.g. an HTML page that makes a Web browser fail), failure-inducing user interaction (e.g. the keystrokes that make a program crash), or failure-inducing changes to the program code (e.g. after a failing regression test). Later, some software development tools have been inspired by Delta Debugging, such as the bisect commands of revision control systems (e.g., git-bisect, svn-bisect, hg-bisect, etc.), which, instead of working on the program's code, apply the delta debugging methodology on the code history by comparing various versions until the faulty change is found. Recently, Network Dialog Minimization a technique based on delta debugging is proposed to find the smallest subset of network traffic from the original dialog, that when replayed still achieves the same goal as the original dialog [2] Software
See also{{Portal|Software Testing}}
References
1. ^{{cite book|last1=Zeller|first1=Andreas|title=Software Engineering — ESEC/FSE '99|volume=1687|pages=253–267|chapter=Yesterday, my program worked. Today, it does not. Why?|date=1999|publisher=Springer|edition=Software Engineering—ESEC/FSE’99 [https://dx.doi.org/10.1007/3-540-48166-4_16 doi:10.1007/3-540-48166-4_16]|doi=10.1007/3-540-48166-4_16|series=Lecture Notes in Computer Science|isbn=978-3-540-66538-0}} 2. ^{{cite conference|last1 = M. Zubair Rafique|title=Network Dialog Minimization and Network Dialog Diffing: Two Novel Primitives for Network Security Applications|book-title = In Proceedings of 30th Annual Computer Security Applications Conference (ACSAC 2014)|publisher = ACM|url=https://zubairrafique.files.wordpress.com/2014/09/ndm_acsac14_cr.pdf|display-authors=etal}} 3. ^{{cite news|title=Detecting Software Errors via Genetic Algorithms|url=http://www.pddnet.com/news/2014/03/detecting-software-errors-genetic-algorithms|accessdate=22 July 2015|date=2014-03-05}} External links
1 : Debugging |
随便看 |
|
开放百科全书收录14589846条英语、德语、日语等多语种百科知识,基本涵盖了大多数领域的百科知识,是一部内容自由、开放的电子版国际百科全书。