現在、Selenium と FluentAutomation で Specflow を使用していますが、specflow のステップ間で状態を維持するという重大な問題に直面しています。
以下のコード例を参照してください。
[Binding]
public class RegistrationSteps : FluentTest
{
[Given(@"I create an account")]
public void GivenICreateAnAccount()
{
new HomePage(this)
.Go()
.StartRegistration()
.EnterDetailsAndClickSubmit(); // takes me to deposit page
}
[When(@"Deposit '(.*)' dollars in my account")]
public void GivenDepositMoneyInMyAccount(int amount)
{
new DepositPage(this)
.EnterDetailsAndClickSubmit(amount);
}
}
私の問題は次のとおりです。
- 最初のステップでは、ページが読み込まれ
Go()
、すべてがうまくいきます - 2 番目のステップでは、テストを続行します。ここでは、前の送信に基づいて、別のページにいることを期待しています。
PageObject
前のステップでここに来るはずだったので、使用しません。Go
この段階では、期待される要素が見つかりません。
私の質問は、複数の Specflow テストで 1 つのブラウザー セッションと複数の PageObjects を使用するにはどうすればよいですか?