Cza*_*ino 11 php phpunit namespaces
传统上,Symfony 2.0 bundle目录结构有一个Tests应该放置测试的目录.
Acme
-> SomeBundle
-> Controller
-> Entity
-> Service
-> ...
-> Tests
-> Controller
-> Entity
-> Service
-> ...
-> OtherBundle
-> ...
Run Code Online (Sandbox Code Playgroud)
我知道测试工作即使它们与他们测试的类没有相同的命名空间.
namespace Acme\SomeBundle\Service;
/**
* Some service.
*
* @author varchar
* @since August 1, 2012
*/
class SomeService
{
}
Run Code Online (Sandbox Code Playgroud)
对于上面的类,我(对于一个)通常会在以下名称空间下进行测试(受目录结构的影响):
namespace Acme\SomeBundle\Tests\Service;
Run Code Online (Sandbox Code Playgroud)
现在,这可行.
但顺便说一句,我使用Netbeans IDE,它找不到测试类,除非它在同一名称空间下(当你只想测试一个文件时这是值得注意的).嗯,这可能只是一个Netbeans标准(或其他东西).
但是,无论如何将测试置于与被测试类相同的命名空间中是否合适?这样做有什么优点吗?
1)将测试放在与被测试的类相同的命名空间中是否合适?
2)这样做有什么优点吗?
Cza*_*ino 12
将测试放在与被测试的类相同的命名空间中是否合适?
到目前为止,关于这一点没有任何问题.所以,这或许只是个人偏好,现在.
这样做有什么优点吗?
似乎有.
1)由于测试和类将共享相同的命名空间,因此不需要
use Acme\SomeBundle\Tests\Service
Run Code Online (Sandbox Code Playgroud)
在测试课上.换句话说,创建与该类共享相同名称空间的测试稍微方便一些.
2)如果您使用NetBeans,那么您将能够使用IDE在单个类上运行测试.
| 归档时间: |
|
| 查看次数: |
4137 次 |
| 最近记录: |