Codeception默认_bootstrap.PHP文件说明:
<?PHP // Here you can initialize variables that will be available to your tests
所以我想在其中初始化一个变量:
<?PHP $a = 5;
但是,当我使用我的SomeAcceptanceCept:
<?PHP // .... $I->fillField('description',$a);
我得到:ErrorException:未定义的变量:a
我在_bootstrap.PHP中做了var_dump,它确实在接受测试之前运行一次,但是它的变量在我的测试中是不可用的.
我似乎找不到任何有关这方面的文件.
我实际上正在尝试初始化Faker实例以在我的测试中使用.
解决方法
我发现有关这方面的文件相当混乱.我试图做完全相同的事情无济于事.所以我结束了使用Fixtures将它放在_bootstrap.PHP文件中:
use Codeception\Util\Fixtures; use Faker\Factory; $fake = Factory::create(); Fixtures::add('fake',$fake);
(您也可以使用单独的fixtures.PHP文件并将其包含在测试中.)
这可以让你得到这个faker对象或者其他的东西:
Fixtures::get('fake');
奇怪的是,如果你看看Fixtures docs,它实际上提到使用Faker库来在bootstrap文件中创建测试数据.