gsoc:2009:xdebug

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
gsoc:2009:xdebug [2009/05/06 09:13] – f derickgsoc:2009:xdebug [2009/07/05 20:49] – Added research section allisterb
Line 10: Line 10:
 ===== Abstract ===== ===== Abstract =====
 Extend the code coverage instrumentation in Xdebug from statement coverage to include decision and path coverage. Xdebug will be able to report for a given block of code the number of unique branches, how many branches were executed during execution of the block, how many linearly independent paths exist through the code block, and which of these code paths were executed. A data structure representing which paths and branches were taken will be available to code coverage tools . Extend the code coverage instrumentation in Xdebug from statement coverage to include decision and path coverage. Xdebug will be able to report for a given block of code the number of unique branches, how many branches were executed during execution of the block, how many linearly independent paths exist through the code block, and which of these code paths were executed. A data structure representing which paths and branches were taken will be available to code coverage tools .
 +
 +==== Initial Timeline ====
 +May 23rd - June 13th: Study closely PHP runtime, opcodes and extending PHP
 +
 +June 13th - June 27th: Implement branch coverage statistics (counting branches executed / total branches)
 +
 +June 27th - July 18th: Implement path coverage statistics (counting paths executed / total paths)
 +
 +July 18th - August 1st Implement branch coverage data structure
 +
 +August 1st - 24th Implement path coverage data structure
 +
 +This will be refined as  I go deeper into the project
 +
 +==== Resources ====
 +http://blog.libssh2.org/index.php?/archives/92-Understanding-Opcodes.html - brief tutorial on opcodes
 +http://www.zapt.info/opcodes.html list of opcodes with annotation
 +http://www.phpcompiler.org/ a PHP compiler - profides a framework for manipulating ASTs
 +
 +===== Research =====
 +
gsoc/2009/xdebug.txt · Last modified: 2017/09/22 13:28 by 127.0.0.1