unchanged
Title
NetBeans IDE and Yii projects
This page is created to supply short directions and general tips for managing a
Yii application in NetBeans IDE.
## Testing
To run functional tests and unit tests in Yii, recommended is installing PHPUnit
and SeleniumRC.
- Install PHPUnit
- Follow [the official version 3.6 installation
instructions](http://www.phpunit.de/manual/3.6/en/installation.html).
- Open "Tools > Options > PHP > Unit Testing" and set the
correct path to the launch script. This is phpunit.bat in Windows and usually
/usr/bin/phpunit in Linux.
- Install SeleniumRC by getting the NetBeans plugin
- Open "Tools > Plugins > Available Plugins"
- Install "Selenium Module for PHP"
- Configure project options
- Open "File > Project properties > Sources" and set
"Test Folder" to \[PROJECT ROOT\]/protected/tests (If the whole
project testing doesn't work, try \[PROJECT ROOT\]/protected/tests/unit)
- Open "File > Project properties > PHPUnit" and set "Use
Bootstrap" to \[PROJECT ROOT\]/protected/tests/bootstrap.php, and "Use
XML Configuration" to \[PROJECT ROOT\]/protected/tests/phpunit.xml
#### Usage:
- Test whole project: Alt+F6
- Test single file: Shift-F6
- Check code coverage (right click project > Code Coverage)
## Code completion
To get context sensitive code completion, follow these steps:
- Include Yii folder (outside project directory)
- Open "File > Project properties > PHP Include Path" and add
the Yii framework root path
- Ignore yiilite.php to avoid doubled/missing documentation
- Open "Tools > Options > Miscellaneous > Files"
- Add to the front of "Files Ignored by the IDE" the file
"^(_yiilite\\.php_|CVS|SCCS|...."
- Restart NetBeans
For above and many more reasons, Yii core files should be kept **outside**
project directory and anywhere outside any web-accessible directory. I.e. if you
keep your project files in Apache's _httpd_ directory, it is wise to create a
new dir (called _yii_, _framewore_ or sth. like that) in the same level of
dirtree (inside Apache main folder, **not** in _httpd_ dir!) and put Yii core
files there. If you do that, you have to include Yii folder in _Include Path_,
as it is written above.
#### Usage:
- Typing suggestions: Ctrl-Space
- Show Function parameters: Ctrl-P
- Comment your own code with PHPDoc style. [Here's a good
example](http://manual.phpdoc.org/HTMLSmartyConverter/HandS/phpDocumentor/tutorial_sample2.pkg.html).
## Debugging
- Include the Xdebug extension for PHP (should already be available):
- In php.ini enable (remove trailing comment semicolon sign - ;) these
settings: <pre>zend_extension =
"C:\xampp\php\ext\php_xdebug.dll"
xdebug.remote_enable = 1
xdebug.remote_handler = "dbgp"
xdebug.remote_host = "localhost"
xdebug.remote_port = 9000</pre>
#### Usage:
- Debug project: Ctrl-F5
- Use breakpoints, walk through running code, and watch variables and objects in
real-time. :)
- If you want to stop the debugger from pausing on the first line for every
request, simply turn that "feature" off by clicking: Tools >
Options > PHP > Debugging > Stop at First Line (uncheck)
In Netbeans (6.9.1 on Windows anyways):
Menu bar > Tools > Options > PHP > Debugging > Stop at First Line
(uncheck)
# Test Driven Design with Netbeans
Check the forum here:
<http://www.yiiframework.com/forum/index.php?/topic/11735-netbeans-ide-and-test-driven-development/>