簡體   English   中英

Selenium 無法進入 Paypal 沙盒詳細信息

[英]Selenium Unable to enter Paypal Sandbox Details

我正在嘗試將我的 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();

但是,這不起作用,非常感謝任何幫助。

問候

理查德

您可以嘗試在密碼字段中發送 Enter 鍵,而不是單擊登錄按鈕。

嘿理查德,我得到了這個工作。

如果您沒有在字段中鍵入內容,則您無法正確訪問 iframe。 如果你通過調試運行它是否有效? 只是想知道這是不是時間問題。 我也會在名稱上使用 ID。

我剛剛使用該字段的輸入 id 的頁面對象。

創建一個 switchTo 以轉到 iframe。

     public static void SwitchToIframe(string frameName)
    {
      _webDriver.SwitchTo().Frame(frameName);
    }

拼湊起來...

    Driver.Goto("https://www.sandbox.paypal.com/cgi-bin/webscr?cmd=_express-checkout&token=EC-54365007M8453270M#/checkout/login");
        Driver.SwitchToIframe("injectedUl");
        
     var email = driver.FindElement(By.ID("email"));
                email.SendKeys("test@no.com");

                var Password = driver.FindElement(By.ID("password"));
                Password.SendKeys("xxxxxxxxxx");

                var Login = driver.FindElement(By.Id("btnLogin"));
                Login.Click();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM