Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Directory layout for PHPUnit tests?

I'm a longtime Java programmer working on a PHP project, and I'm trying to get PHPUnit up and working. When unit testing in Java, it's common to put test case classes and regular classes into separate directories, like this -

/src  
  MyClass.java

/test  
  MyClassTest.java

and so on.

When unit testing with PHPUnit, is it common to follow the same directory structure, or is there a better way to lay out test classes? So far, the only way I can get the "include("MyClass.php")" statement to work correctly is to include the test class in the same directory, but I don't want to include the test classes when I push to production.

like image 903
Alex Zuroff Avatar asked Sep 15 '08 18:09

Alex Zuroff


1 Answers

I think it's a good idea to keep your files separate. I normally use a folder structure like this:

/myapp/src/        <- my classes
/myapp/tests/       <- my tests for the classes
/myapp/public/      <- document root

In your case, for including the class in your test file, why not just pass the the whole path to the include method?

include('/path/to/myapp/src/MyClass.php');

or

include('../src/MyClass.php');
like image 69
Mattias Avatar answered Oct 12 '22 12:10

Mattias