0
swf 메일러와 함께 Symfony2 (.7)를 사용하여 eamils를 보냅니다. 한 번에 여러 사용자에게 전자 메일을 보내고 symfony 페이지에서 Profiler를 사용하여 제안 했으므로 기능 테스트를 수행했습니다. 테스트는 PHPUnit에 의해 실행됩니다.Symfony2 swiftmailer 기능 테스트가 Gitlab CI에서 작동하지 않습니다
$client->enableProfiler();
$crawler = $client->request(...);
if ($profile = $client->getProfile()) {
$this->assertEquals(1, $mailCollector->getMessageCount());
}
문제는 시험 (창)하지만 GitLab 커뮤니티 에디션 8.8.1의 CI에서 실행 테스트가 실패했을 때 내 로케일 PC에서 확인 것입니다. $ 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.
로컬 테스트 할 때 당신이 config_test.yml과 테스트 ENV를 사용하여이되어 있는지입니다 :/또한 테스트는 경우 지점을 입력하고 난 메일 수집기를 가지고 너무 작동하지만 messagecount는 CI에서는 0이지만 응답을 위해서는 thx입니다 – fagyi
--env = dev (기본값)에 db가 설치된 이유는 무엇입니까? – Rufinus
'매개 변수 : database_host : 127.0.0.1 database_port : 3306 데이터베이스 _ : somename DATABASE_USER : 루트 DATABASE_PASSWORD : 널 (null) CFG : 교리 : dbal : 드라이버 : pdo_mysql 호스트 : "%의 database_host %의" 포트 : "%의 database_port %의" DBNAME : "%의 데이터베이스 _ %의" 사용자 : "%의 DATABASE_USER %의" 암호 : "%의 DATABASE_PASSWORD %의" 캐릭터 세트 : UTF8 ORM : auto_generate_proxy_c lasses : false naming_strategy : doctrine.orm.naming_strategy.underscore auto_mapping : true' – fagyi