Codeception / Codeception/module-doctrine
Different results if I run one test and all test in same time
- 主要语言
- PHP
- 星标
- 4
- 派生
- 2
- PR 合并指标
- 30 天内没有已合并 PR
描述
#### What are you trying to achieve?
Right now, I have some strange behaviour while running functional tests. If I run one file `codecept run functional /FunctionalFolder/Services/ServiceOneCest`, all tests are success - as expected. But in secound case, when I run all created tests `codecept run functional /FunctionalFolder`, some tests are finished as expected, while some others are failed.
Somehow, in _before() section, are not executed all dependeces.
```
class ServiceOneCest
{
public function _before(FunctionalTester $I)
{
$this->entityManager = $I->grabServiceFromContainer(EntityManager::class);
$this->entity = $this->entityManager->getRepository(Entity::class)
->findOneBy([
'name' => 'test'
]);
if (!$this->entity) {
$this->entity = $I->have(Entity::class, ['name' => 'test']);
}
}
public function testSomething(FunctionalTester $I)
{
$I->assertEquals('test', $this->entity->getName());
// here I catch error message [Error] Call to a member function getName() on null
// it only happend when I run more then one test file
}
}
//also exist some other test file
class ServiceTwoCest
{
}
```
I expect same results if I run one test file or more. I need to say, don't have any dependece between test data created in `_before()`
Please, if you see any reason or my bad code/configuration anything, give me handsup. If you have some other questions, please feel free to contact me.
### Details
* Codeception version: 2.5.1
* PHP Version:PHP 7.1.25
* Operating System: ubuntu16.04.1 (on vagrant)
* Installation type: Phar || Composer
* List of installed packages (`composer show`)
* Suite configuration:
```
actor: FunctionalTester
modules:
enabled:
- ZF2
- Asserts
- \Helper\Functional
- Doctrine2:
depends: ZF2
- DataFactory:
depends: Doctrine2
- \Helper\Factories
config:
Doctrine2:
cleanup: true
```
贡献指南
这个仓库没有索引到贡献指南
调研方向
通过运行报告中所示的单文件和整个目录的 Codeception 功能测试命令来重现该问题。阅读 Cest 的 _before() 方法以及 ZF2、Doctrine2、DataFactory 和清理配置。当相同的测试单独运行或作为 suite 运行时都产生一致的结果,即表示完成。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- php
- 领域
- database, testing
- Issue 类型
- 缺陷
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 活跃度
- 停滞
- 描述清晰度
- 需要澄清
- 新手友好度
- 35/100