2013-02-11 3 views
3

Mink Extension의 사전 정의 된 단계 정의로 일부 테스트를 실행했습니다. 그들은 영어로만 작동합니다. Behat 사전 정의 된 단계 번역 (Phar 설치)

는 지금은 독일어 단계를 다음과 같은 시나리오를 시도했다 :

# language: de 
Funktionalität: Demo 

    @javascript 
    Szenario: Test 1 
    Angenommen I am on "/" 
    Angenommen ich bin auf "/" 
    ... 

지금 영어 버전이 작동하는 동안 독일 단계 정의는 정의되지 않은 것을 알려줍니다 Behat.

은 CLI 도움말에 따르면, behat --lang de -dl 번역 된 정의를 표시해야하지만, 그것은 단지 나에게 영어 사람을 보여줍니다 ...

은 내가 잘못 여기서 뭐하는 거지?

편집 : 다음은 시나리오를 다시 작성하는 스크립트입니다. 임시 디렉토리에있는 문서 (http://extensions.behat.org/mink/#through-phar)의 설치 단계를 따르고 테스트 기능 파일을 실행합니다.

#!/bin/bash 

set -e 

TEMPDIR=/tmp/behat-$$ 
mkdir $TEMPDIR 
cd $TEMPDIR 

curl http://behat.org/downloads/behat.phar >behat.phar 
curl http://behat.org/downloads/mink.phar >mink.phar 
curl http://behat.org/downloads/mink_extension.phar >mink_extension.phar 

cat >behat.yml <<EOF 
default: 
    extensions: 
    mink_extension.phar: 
     mink_loader: 'mink.phar' 
     base_url: 'http://behat.org' 
     goutte:  ~ 
EOF 

mkdir features 
cat >features/test.feature <<EOF 
# language: de 
Funktionalität: Demo 

    Szenario: Öffne Startseite DE + EN 
    Angenommen I am on "/" 
    Angenommen ich bin auf "/" 
EOF 

php behat.phar 

답변

4

기본적으로 잘못된 것은 아닙니다.

Behat/Gherkin 자체의 번역이 behat.phar 파일에 포함되어 있지만 minkExtension의 단계 정의 번역이 mink_extension.phar 아카이브에 없습니다.

build script에는 MinkExtension/src /에 MinkExtension/i18n /이없는 파일 만 포함되어 있기 때문에 이러한 경우 인 것 같습니다. 이 문제를 해결하기 위해 issue for MinkExtension을 열 수 있습니다.

해결 방법으로 phar 아카이브로 작업하는 대신 작곡가를 사용하여 Behat/Mink를 설치하는 것이 좋습니다.

는 다음 composer.json 파일을 만듭니다

{ 
    "require": { 
     "behat/behat": "2.4.*@stable", 
     "behat/mink": "1.4.*@stable", 
     "behat/mink-extension": "*", 
     "behat/mink-goutte-driver": "*", 
     "behat/mink-selenium2-driver": "*" 
    }, 
    "minimum-stability": "dev", 
    "config": { 
     "bin-dir": "bin/" 
    } 
} 

를 다음에 설치한다 :

curl http://getcomposer.org/installer | php 
php composer.phar install