0
Byステートメントを使用して複数のロケータを使用することに関する質問があります。ステップ定義でロケータの選択を適用する方法
私はそれが句によって基づいてフィールドに入力するコードの私の作品を持っている下:私が使用するロケータを決定する方法を考え出すのに苦労しています私のステップの定義では
public void GetFieldAndEnterText(By fieldElement, string fieldText) =>
_driver.FindElement(fieldElement).SendKeys(fieldText);
specflowステップで述べられているフィールドに基づいています。
:フィールドには、確認のメールアドレスである場合_payment.GetFieldAndEnterText(PaymentDetailsResponsiveElements.EmailAddressField);
:
When I enter in invalid email Test.TestEmail.plc for Email address field
And I enter in invalid email Test.TestEmail.gmail.com for Confirm email address field
は、私は事実上のフィールドは、電子メールアドレスは、このロケータを使用している場合はそれになりたい:
私はこれらの手順を持っています_payment.GetFieldAndEnterText(PaymentDetailsResponsiveElements.ConfirmEmailAddressField);
これを私の下のステップ定義にどのように適用できますか?
[When(@"I enter in invalid email (.*) for (.*) field")]
public void WhenIEnterInInvalidEmailForField(string fieldText, By fieldElement)
{
_payment.GetFieldAndEnterText(fieldElement, fieldText);
}
なぜこのような詳細に入りますか? 1つまたは2つのステップを作成できます。アドレス欄に無効な電子メールを入力したとき無効なConfirm電子メールアドレスを入力したとき、またはアドレス[email protected]を入力して電子メールアドレス[email protected]を確認すると、不一致エラーが発生します。次に、文字列フィールドに基づいて2つのエントリを行います。 – Dazed