3

MinkExtensionの事前定義されたステップ定義を使用していくつかのテストを実行しました。彼らは英語である限り機能します。

今、私はドイツ語のステップで次のシナリオを試しました:

# 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

1 に答える 1

4

基本的にあなたは何も悪いことをしていません。

Behat/Gherkin 自体の翻訳は behat.phar ファイルに含まれていますが、MinkExtension からのステップ定義の翻訳は mink_extension.phar アーカイブにありません。

これは、ビルド スクリプトが MinkExtension/i18n/ を含まない MinkExtension/src/ 内のファイルのみを含むためです。これを修正するには、MinkExtensionの問題を開くことができます。

回避策として、phar アーカイブを使用する代わりに、composer を使用して 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
于 2013-05-11T11:53:54.557 に答える