BDDを適用し、SpecFlowとSeleniumを使用しています。受け入れ基準はGherkinで指定されています。Gherkinシナリオ(SpecFlow/BDD/Selenium)で 'Given'を実装するにはどうすればよいですか?
私はGiven節に関する質問があります。
の例では、...のためので、私が注文詳細ページ
だ
- を与えられるかもしれません「注文の詳細ページに掲載されています」というメッセージが表示されたら、ログインして、注文を送信する準備ができている必要があります。しかし、どうすればその点に到達できますか?
我々はすでに、関連する既存のSpecFlowに、我々は右のポイントを取得する(セレン経由)これらを使用することができます手順をお持ちの場合は - このような何か...
- 私は登録ユーザー
- 午前与えられ、私は
- ログインページにそして私は私の登録したユーザー名を使用してログインし、パスワードと私は
- 新しい秩序を作成して、私はXYZ製品 を検索します私は順序
- を送信するとそれから私は、私たちも、すべてのこれらのステップを置くことができるための要約
を参照してください
- そして、私は順序
- に製品を追加し、私は
- 注文の詳細ページを選択します「注文の詳細ページにあります」の下のステップコードで
ただし、Givenを実装するためにSeleniumを使用するのは正しいですか?または、UIを経由せずにセッション/データベース内の関連するすべての状態/データを設定する方法を見つける必要がありますか?
私はここに間違いがないと思っています。私はそれがとてもうまくいっていると言わなければならないが、我々は常に我々のアプローチを改善しようとしている。本当の経験を持つ人から聞くことに非常に興味があります。
私が(助けるが、それはないと思うことができない! - ので、私を撃墜しないでください場合)スタックオーバーフローが、このために右のフォーラムであると思います...
ありがとうございました。 「あなたは統合テストを行っていると仮定しているので、DBにアクセスすることは理にかなっています。はい、あります。 「セレンは自動テストを自動化します。私はあなたのデータを設定するためにそれを使用しません」と「正しい状態でレコードを作成するのがよりクリーンだと感じています。私は同意します - これは正しいアプローチです。これにはオーバーヘッドがありますが、それほど脆弱ではなく、これらの他のステップが最初にコード化されていなくても機能を開発することができます。 –