Выполните следующие действия: перейдите на веб-сайт стойки Nordstrom и нажмите «Зарегистрироваться». Когда появится всплывающее окно, введите адрес электронной почты и пароль и создайте учетную запись
Ниже приведен код:
class EntryPoint
{
static void Main(string[] args)
{
String parentHandle = Driver.driver.CurrentWindowHandle;
EmailSignUp signup = new EmailSignUp();
Driver.driver.Navigate().GoToUrl("https://www.nordstromrack.com/");
Thread.Sleep(1000);
signup.SignUpLink.Click();
foreach (String winHandle in Driver.driver.WindowHandles)
{
Driver.driver.SwitchTo().Window(winHandle);
}
**signup.EmailInput.Click();
signup.EmailInput.SendKeys(Config.Credentials.Valid.BaseEmail);** //Unable to find these elements
Thread.Sleep(1000);
**signup.Password.Click();
signup.Password.SendKeys(Config.Credentials.Valid.Password);** //unable to locate these elements
Thread.Sleep(1000);
signup.CreateAccount.Click();
Thread.Sleep(5000);
Driver.driver.Quit();
}
}
Определение WebElements Класс, в котором элементы email и пароль определены
using OpenQA.Selenium;
using OpenQA.Selenium.Support.PageObjects;
namespace NordstromRack.UI_Elements
{
public class EmailSignUp
{
public EmailSignUp()
{
PageFactory.InitElements(Driver.driver, this);
}
[FindsBy(How = How.ClassName, Using = "form-label__input form-label__input--password")]
public IWebElement Password { get; set; }
[FindsBy(How = How.ClassName, Using = "form-label__input form-label__input--email")]
public IWebElement EmailInput { get; set; }
[FindsBy(How = How.ClassName, Using = "secondary-nav__link")]
public IWebElement SignUpLink { get; set; }
[FindsBy(How = How.ClassName, Using = "cta-button__content")]
public IWebElement CreateAccount { get; set; }
}
}