問題タブ [python-behave]

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.

0 投票する
3 に答える
1872 参照

python - Python でビヘイビア テーブルから行を選択する

私は Python でテストを開発するために振る舞いフレームワークを使用しています。現時点では、シナリオの概要とその下に例があります。いつでもこれらの例の 1 つを選択して、その例でテスト機能を実行できるようにしたいと考えています。どうすればそれを行うことができますか?今のところ、コマンド ラインから Behaviour を呼び出すたびに、シナリオ アウトラインの下にある [サンプルの動作] テーブルのすべてのサンプル エントリに対してシナリオが実行されます。

編集:より明確にするためにスクリーンショットを添付しました。

ここに画像の説明を入力

この例は、behavior のドキュメントからのものです。Consumer Electronics テーブルの下を見ると、シナリオ アウトラインが実行される 2 つの行が表示されます (つまり、2 回実行されます)。これらの例の 1 つをテストしたいとします。これらの例は 20 (つまり 20 行) ありました。動作テストを実行し、シナリオ アウトラインがすべてのケースを終了するのを待たなければならない代わりに、どうすればそれらの 1 つだけを選択できるでしょうか (たとえば、必要な例がテーブルの最後のエントリである場合)。

0 投票する
1 に答える
965 参照

json - python-behave で JSON の等価性をテスト失敗時の差分でアサートする方法は?

python-behave で JSON の等価性をアサートし、アサーションが失敗したときに出力として差分を取得するにはどうすればよいですか?

Ruby ではhttps://github.com/collectiveidea/json_specを使用しているため、基本的に Python で同様の機能を探しています。

通常のassertステートメントでは、出力は非常に役に立ちません。

0 投票する
1 に答える
1113 参照

python - Python は assertRaises を処理できますか

Behaveを使用していくつかのテストを実装し始めています。既存の単体テスト (より多くの機能テスト) の一部を置き換えたいと考えています。これらのいくつかは assertRaises を使用して、バックエンド サービスへの特定の呼び出しでエラーが発生することを確認します。Behave (または Gherkin) で同様のものを使用することは可能ですか?

次の単体テストはバックエンド サービスを呼び出しますが、ゲストがログオンしているため、管理タスク (do_admin_task) を実行できません。例外が発生するはずです。

機能ファイルでは、シナリオをどのように作成しますか? このような?

これにより、 whenステップですでに例外が発生するため、 thenステップにも到達しないと思います。

これに関して私が想像できる 1 つの方法は、これらの両方のステップを実行し、例外処理を行う特定のステップを作成することです。ただし、低レベルの呼び出しでエラーをモックしたい場合は、これらの手順の多くを書き直す必要があります。これは、最初に Behave に切り替えることで回避したいと考えていることです。

これにどのようにアプローチすればよいですか?

0 投票する
4 に答える
6172 参照

python - 動作テスト用のモジュール構造

現在、テスト機能の次のディレクトリがあります。

BehaveTest1 と BehaveTest2 のテスト ステップは共通であるため、必要なときに両方のテスト ケースで呼び出せる共通のモジュールを実装したいと考えています。現時点では、Tests/ フォルダー内に common/ ディレクトリを作成し、次のようにして (各テスト機能の test_steps.py ファイル内に) インポートしました。

しかし、私はパスを台無しにしたくないので、動作テスト機能の構造でこれを行うより良い方法があるかどうか疑問に思っていましたか?

0 投票する
1 に答える
587 参照

python - 動作時に現在のステップ文字列を読み取る

一致する現在のステップ文字列を読みたいです。動作では、一致が完了すると、一致するステップ文字列でタグ付けされた関数が実行されます。このステップ文字列を印刷したいと思います。どうすればこのような単純なタスクを実行できるでしょうか?

例:

0 投票する
1 に答える
2704 参照

python-behave - Python は、python3.4 ではなく python2.7 から実行して動作します

動作を実行すると、python2.7 から実行されているように見え、python3.4 用にインストールされているセレンが見つかりません。python3.4 をどこかで実行するように動作を構成する必要がありますか?動作サイトや他の場所には何も表示されません。python 3.4 での振る舞いについての投稿があるので、可能です。

ここに私が見るものがあります:

私はPYTHONPATHpython 3.4/dist-packagesを指しています:

/usr/local/lib/pythonX.X/dist-packagesXXが2.7と3.4の両方にインストールされています

どんな助けでも大歓迎です。

0 投票する
1 に答える
340 参照

python - Python を実行しようとするとエラーが発生する

動作を使用してセレン テストを実行しようとしていますが、そのアイデアの開始時に行き詰まっています。私はpython、seleniumをセットアップし、本来あるべきように動作しました。問題なくセレンでpythonスクリプトを実行しています。私の問題は、振る舞いで実行しようとすると始まります。私のpythonは3.5.2、セレンは2.53.2、ビヘイビアは1.2.5です。機能ファイルを実行しようとすると、以下のエラーが発生します。PyCharm IDE で実行しようとしても、コマンド プロンプトから直接実行しようとしても問題ありません。何が間違っているのか、何が間違っているのか、誰にも手がかりがありますか?

エラー:

プロセスは終了コード 1 で終了しました