問題タブ [gherkin]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
cucumber - SpecFlow / Gherkinステップ間の再利用性を高める方法は?
SpecFlowの背後にある概念やアイデアを完全に理解していると思いますが、Secret Ninja Cucumber Scrolls、The Cucumber Bookを読んだ後でも、さまざまなフォーラムを読んだ後でも、再利用性への道はまだわかりません。
私たちのシナリオはすでにさまざまなガイドラインに準拠しています
- 自明
- 理解できる目的を持っている必要があります(他のシナリオとの違い)
- ユニークです
- 垂直機能スライスを表す
- ユビキタス言語を使用
- 利害関係者の観点から書かれた
- ソフトウェア設計ではなく、ビジネス機能について
- 叙事詩によるグループ化
- テストスクリプトではありません
- シナリオが正しいかどうかを確認するために、他の誰かに読んでもらいます
- UI要素を参照しません
- 重要な例を表す
- 非技術的な
- 正確でテスト可能
- 可能な限り再現可能
- 「与えられた」は、アクションではなく状態を表します
- 「いつ」はアクションを表します
- 「Then」は、内部イベントではなく、目に見える変化を表す必要があります
手順は、次のガイドラインに準拠する必要があります(一部はSpecFlowに固有です)。
- ユビキタス言語を使用
- UI要素を参照しません
- 組み合わせてはいけません
- すべての機能で再利用可能でグローバルである必要があります
- 特定の機能にリンクしないでください
- エンティティ、エンティティグループ、またはドメインの概念ごとにグループ化
- ステップ定義ファイルでロジックを再利用するステップを作成しないでください
- ステップが属するステップファイルをよく考えてください
- フェーズ間のステップを再利用しないでください
- ステップ内のリテラル文字列は避ける必要がありますが、必要に応じて一重引用符を使用してください
- ステップメソッドに複数の[Given]、[When]、または[Then]属性を適用しないでください
- それらが表すフェーズに従ってステップを順序付けます
- シナリオにとって重要でない場合は、言うまでもなく非常に重要です
ただし、正規表現プレースホルダーを使用した場合でも、同じ手順のバリエーションがたくさんあります。特に、何かが重要でない場合、それがそれらの変動をもたらすことを言及するべきではないという規則。そして、はい、内部的にこれらのステップは多くの再利用を行いますが、シナリオではそうではありません。
たとえば、次のシナリオを考えてみましょう。
2つの「与えられた」ステップを1つに組み合わせて、再利用性をいくらか失う方がよいでしょうか。
他のいくつかの例:
ここで基本的な概念が欠けていますか?
cucumber - ガーキン海賊団で書かれたシナリオの例
私が見る限り、Gherkin は Pirate を含む多くの異なる言語をサポートしています。
海賊版のキーワードの例と、そのシナリオがどのように聞こえるか、または例がリストされているサイトを知っている人を教えてください。
testing - Gherkinで「GivenWhenThenWhenThen」テストを書くことは許容されますか?
Gherkinで「GivenWhenThenWhenThen」テストを書くことは許容されますか?実際の例は次のとおりです。すべてのAllPlayers.com
behatを使用して機能することはわかっているので、構文解析は問題ありません。より良いテストを書こうとしているだけです。私は最初に書くことができましたAnd the Registration Wizard should be filled out with data
が、それは十分に具体的ではないようです...
提案?
ruby-on-rails - スペイン語でのキュウリのステップの定義:「...」のあいまいな一致
きゅうりのステップ定義をスペイン語に翻訳しようとしていますが、次のエラーが発生します。
これが私のweb_steps.rbです
正規表現で^と$を取得した場合、どうしてそれが曖昧になるのでしょうか。
ruby - Gherkin 2.1.5 のインストールに関するトラブルシューティング
私は Gherkin 2.1.5 をインストールしようとしていますが、実際にはhttps://github.com/opencongress/opencongressの依存関係です。インストールするコードのルート ディレクトリで使用bundle install
しています。約 20 ~ 30 個のパッケージがインストールされており、今はこれで行き詰まっています。私は走っています:
インストールが停止した後の出力は次のとおりです。
私はこれまで Ruby でプログラミングしたことがないので、インストール プロセス全体にかなり慣れていません。redcloth をインストールする方法を見つけたばかりで、自分は大丈夫だと思っていました。アドバイスをありがとう。
sublimetext2 - SublimeText2でのSpecFlow/Gherkinの強調表示
SpecFlow /Gherkin仕様ファイルの構文強調表示を有効にするために利用できるSublimeText2パッケージがあるかどうか誰かが知っていますか?
cucumber - Gherkin で同じことを繰り返すのを避ける
それで、私はしばらくspecflowを使用してきましたが、何かが私を悩ませています。
これは、現在使用しているシナリオの例です。
ほぼすべてのセリフで「スコットランド」と言うのを避けるべきアウェイはありますか? それとも読みやすくするので、そのままにしておくべきですか?
ruby - キュウリ: ステップは定義されているが未定義のステップ
このステップの実装があります
与えられた /^entity URI "([^"]*)"$/ do |arg1| @entityUri = arg1 end
この手順を既存の機能ファイルから新しい機能ファイルにコピーしました
Cucumber states 1 シナリオ (1 未定義) 8 ステップ (2 スキップ、4 未定義、2 パス) 0m0.009s
次のスニペットを使用して、未定義のステップのステップ定義を実装できます。
与えられた /^entity URI "(.*?)"$/ do |arg1| pending # 上記の正規表現を希望するコードで表現 end
PS: 古い機能ファイルと新しい機能ファイルのディレクトリ構造を確認したところ、それらは同じレベルにありました。この解決策でもうまくいきませんでした:キュウリ: 未定義のステップですが、ステップを定義する必要があります
formatting - specflow で Gherkin のフォーマット スタイルを変更できますか?
specflow で Gherkin のフォーマット スタイルを変更できますか? これどうやってするの?
cucumber - アウトライン例でテーブルデータを使用することはできますか?
これは可能です:
私の質問は:
アウトラインの例にテーブルを使用することは可能ですか? 次のシナリオのように: