【发布时间】:2017-07-30 17:29:04
【问题描述】:
我正在尝试将我的 Selenium 测试添加到 Paypal 测试详细信息,以便自动化 Paypal 测试
我可以导航到 Sandbox.Paypal 页面,但是一旦到达那里,我就无法让 Selenium 自动输入电子邮件和密码并单击登录按钮。我在 Visual Studio 上用 C# 编写。
我目前这一步的代码是
driver.Instance.SwitchTo().Frame("injectedUl");
By AtPaypal = By.CssSelector("#loginSection > div.pr.row-fluid > xo-title > h1");
new WebDriverWait(driver.Instance, TimeSpan.FromSeconds(20)).Until(ExpectedConditions.ElementIsVisible(AtPaypal));
var email = driver.Instance.FindElement(By.Name("login_email"));
email.SendKeys(Keys.Control + "a");
email.SendKeys("xxxxxxxxxx");
var Password = driver.Instance.FindElement(By.Name("login_password"));
Password.SendKeys(Keys.Control + "a");
Password.SendKeys("xxxxxxxxxx");
var Login = driver.Instance.FindElement(By.Id("btnLogin"));
Login.Click();
By Paypal = By.Id("confirmButtonTop");
new WebDriverWait(driver.Instance, TimeSpan.FromSeconds(20)).Until(ExpectedConditions.ElementIsVisible(Paypal));
var ContinueBtn = driver.Instance.FindElement(By.Id("confirmButtonTop"));
ContinueBtn.Click();
但是这不起作用,非常感谢任何帮助。
问候
理查德
【问题讨论】:
-
你能找到元素密码字段和电子邮件字段吗?
-
因为我们看不到实际的 html,所以突出的是您切换到了 iframe。这实际上是在 iframe 中吗?如果是这样,“injectedUl”是 iframe 的实际名称吗?当您无法与任何对象交互时,可能是您正在与不正确的框架进行交互,或者不需要该框架。
-
sandbox.paypal.com/cgi-bin/… 这是 Paypal Sandbox 的网址,阅读其他人过去如何解决此问题导致 Iframe 代码,但这对我不起作用。非常感谢任何帮助
标签: c# visual-studio selenium paypal