多くのテストが行われている「動作」機能があります。
開発のニーズに合わせて特定のシナリオを実行するだけで済みます。
どうすればいいのですか?
(できればコマンドラインで)
単一のシナリオのみを実行するには、シナリオの名前で-n
を使用できます。
$ behave -n 'clicking the button "foo" should bar the baz'
上記の単一引用符を使用して、シナリオの名前を-n
の-one引数として保持しています。それ以外の場合、シェルはシナリオ名の各Wordを個別の引数として渡します。
その機能に対して単一のテストを実行したい場合は、-n
または--name
フラグを使用します。これは、Scenario:
の後にテキストが必要なようです。
behave -n 'This is a scenario name'
-i
または--include
フラグを使用して機能ファイルを実行し、機能ファイルの名前を指定できます。
behave -i file_name.feature
または:
behave --include file_name
--exclude
フラグを使用して除外することもできます。
behave -e file_name
詳細については、ドキュメントで コマンドライン引数 を確認してください。付録のセクションには多くの役立つ情報が隠されています。
注:これを書いている時点では、Python 3.6およびBehave 1.2.5では、この issue が原因で動作しません。(UPDATE:1.2。 6はリリースされてこれを修正していますが、python 3.4を使用している場合、そのバージョンはpipから利用できないため、pip3 install git+https://github.com/behave/behave#1.2.6rc
)で回避できます。
また、-iフラグのFeature:
の後にテキストを渡すことができるはずですが、現在は機能しません。それが再び機能する場合は、誰かに更新を通知してください。また、テストに@wip
を追加できるwipフラグをチェックアウトして、-wip
がテストを実行するだけでなく、デバッグ用の印刷/ログ記録ステートメントも許可することをお勧めします。
タグはいくつかのオプションを提供します...
1)遅いものにタグを付けてから、逆で呼び出すことで回避します。
behave -t '~@slow_tag_name'
2)ただし、最も柔軟性を高めるために、各シナリオに一意のIDをタグ付けすることをお勧めします。例えば@YYYY_MM_DD_HHmm_Initials
タグスキーム。これは十分にユニークであり、トレーサビリティは有用/興味深いものです。その後、いつでもタグを使用して呼び出し、シナリオを実行することができます。
behave @2015_01_03_0936_jh