我尝试使用phpunit-skelgen
在文档中,它是写的
当您使用骨架生成器根据名称空间中声明的类生成代码时,您必须提供类的限定名称以及声明它的源文件的路径。
例如,对于在项目命名空间中声明的类Calculator,您需要调用骨架生成器,如下所示:
phpunit-skelgen --test - “project \ Calculator”Calculator.php Sebastian Bergmann的PHPUnit Skeleton Generator 1.0.0。
将“project \ CalculatorTest”的骨架写入“/home/sb/CalculatorTest.php”。
我正在使用symfony 2 我的班级是这样的:
<?php
// src/Acme/SecurityBundle/Security/User/MyUserProvider.php
namespace Acme\SecurityBundle\Security\User;
use Symfony\Component\Security\Core\User\UserProviderInterface;
use Symfony\Component\Security\Core\User\UserInterface;
use Symfony\Component\Security\Core\Exception\UsernameNotFoundException;
use Symfony\Component\Security\Core\Exception\UnsupportedUserException;
use Acme\SecurityBundle\Security\User\MyUser;
class MyUserProvider implements UserProviderInterface
{
// public functions ...
}
我试图从我的应用程序基目录
运行phpunit-skelgen --test -- "Acme\SecurityBundle\Security\User\MyUserProvider" "Absolute\Path\to\src\Acme\SecurityBundle\Security\User\MyUserProvider.php"
phpunit-skelgen --test -- "Acme\SecurityBundle\Security\User\MyUserProvider" Absolute\Path\to\src\Acme\SecurityBundle\Security\User\MyUserProvider.php
phpunit-skelgen --test -- Acme\SecurityBundle\Security\User\MyUserProvider Absolute\Path\to\src\Acme\SecurityBundle\Security\User\MyUserProvider.php
甚至
phpunit-skelgen --test -- "Acme\SecurityBundle\Security\User\MyUserProvider" MyUserProvider.php
和
phpunit-skelgen --test -- MyUserProvider MyUserProvider.php
从Absolute \ Path \到\ src \ Acme \ SecurityBundle \ Security \ User \
phpunit-skelgen --test -- "Acme\SecurityBundle\Security\User\MyUserProvider" MyUserProvider.php
输出始终为
PHPUnit Skeleton Generator 1.2.1 by Sebastian Bergmann.
没有更多。 有没有人有想法?
答案 0 :(得分:2)
我只是忘记了引导程序
phpunit-skelgen --bootstrap app\bootstrap.php.cache --test -- "Acme\SecurityBundle\Security\User\MyUserProvider" "E:\path\to\app\src\Acme\SecurityBundle\Security\User\MyUserProvider.php"