2016-09-06 4 views
0

Im использует Symfony2 (.7) с swiftmailer для отправки eamils. Создал функцию отправки сообщений электронной почты нескольким пользователям одновременно и функциональный тест для нее, поскольку страница symfony предложила использовать профилировщик. Тест выполняется PHPUnit.Функциональный тест Symfony2 swiftmailer не работает на Gitlab CI

$client->enableProfiler(); 
$crawler = $client->request(...); 

if ($profile = $client->getProfile()) { 
    $this->assertEquals(1, $mailCollector->getMessageCount()); 
} 

Проблема заключается в том, что тест нормально на моем компьютере локали (окна), но когда работает на GitLab Community Edition 8.8.1 в CI тест не пройден. $ MailCollector-> getMessageCount() возвращает 0, а также $ mailCollector-> getMessages() пустой массив.

CI конфигурации:

before_script: 
    - composer config --global .. 
    - composer self-update 
    - composer install 
    - cat app/config/parameters.yml 
    - mysqlthings 

stages: 
    - test 

test: 
    script: 
    - php app/console doctrine:schema:update --force 
    - php app/console doctrine:fixtures:load 
    - php app/console security:check 
    - php app/console cache:clear --env=test 
    - php -d zend_extension=xdebug.so phpunit.phar -c app/ 

DEV CFG:

framework: 
    router: 
     resource: "%kernel.root_dir%/config/routing_dev.yml" 
     strict_requirements: true 
    profiler: { only_exceptions: false } 

web_profiler: 
    toolbar: true 
    intercept_redirects: false 

тест CFG:

imports: 
    - { resource: config_dev.yml } 

framework: 
    test: ~ 
    session: 
     storage_id: session.storage.mock_file 
    profiler: 
     enabled: true 

web_profiler: 
    toolbar: false 
    intercept_redirects: false 

swiftmailer: 
    disable_delivery: true 

security: 
    firewalls: 
     main: 
      http_basic: ~ 

Btw эти файлы одинаковы на gitlab и моей местности. Я также попытался почтовик с этим:

mailer_transport: smtp 
    mailer_host: 127.0.0.1 
    mailer_user: null 
    mailer_password: null 
    mailer_port: 465 

и с реальным сервером почтовой программы, как моя последняя надежда .. я нужны некоторые дополнительные настройки на CI или что может быть проблема ли? Thx.

ответ

0

Я тоже использую gitlab ci, и у меня никогда не было этой проблемы - я также не думаю, что это проблема с CI-Runner.

вы уверены, что у этого в config_test.yml и используя тест окр при тестировании локального ?:

framework: 
    profiler: 
     enabled: true 
+0

Его позволило конечно:/и тест входит в ветвь, если и я получил почтовый коллектор тоже, поэтому они работают, но messagecount равен 0 на CI, но thx для вашего ответа. – fagyi

+0

Почему ваша установка db в -env = dev (по умолчанию)? – Rufinus

+0

'параметры: database_host: 127.0.0.1 database_port: 3306 database_name: SomeName database_user: корень database_password: нулевой CFG: доктрина: DBAL: водитель: PDO_MySQL хозяин: "% database_host%" порт : "% database_port%" имя_бд: "% database_name%" пользователя: "% database_user%" пароль: "% database_password%" кодировок: UTF8 ОРМ: auto_generate_proxy_c lasses: false naming_strategy: doctrine.orm.naming_strategy.underscore auto_mapping: true' – fagyi

 Смежные вопросы

  • Нет связанных вопросов^_^