Die Webautomatisierung von PayPal Advanced Checkout schlägt manchmal in Selenium Java fehlJava

Java-Forum
Guest
 Die Webautomatisierung von PayPal Advanced Checkout schlägt manchmal in Selenium Java fehl

Post by Guest »

Ich automatisiere den Checkout-Prozess auf einer NopCommerce-Website mit PayPal Advanced als Zahlungsmethode. Meistens funktioniert die Automatisierung, aber manchmal gelingt es nicht, die Zahlung abzuschließen.
Wenn die Zahlung funktioniert, sieht das PayPal-Formular so aus:
Paypal-Zahlungsformular erfolgreich< /p>
Wenn dies fehlschlägt, sieht das Formular so aus:
Fehlgeschlagenes Paypal-Zahlungsformular
Der Hauptunterschied besteht darin, wie die Kartennummer angezeigt wird. mit Leerzeichen zwischen jeweils vier Ziffern, wenn es funktioniert.
Zuerst habe ich die sendKeys-Methode in meinem Selenium-Code verwendet:

Code: Select all

WebDriverWait wait = new WebDriverWait(driver, Duration.ofSeconds(60));
wait.until(ExpectedConditions.frameToBeAvailableAndSwitchToIt(By.xpath("//iframe[@title='paypal_card_number_field']")));

WebElement cardNumberInput = wait.until(ExpectedConditions.elementToBeClickable(By.name("number")));

cardNumberInput.click();
cardNumberInput.clear();

cardNumberInput.sendKeys(cardNumber);

driver.switchTo().defaultContent();
Ich dachte, das Senden der gesamten Kartennummer auf einmal könnte das Problem sein, also habe ich es so geändert, dass jeweils nur eine Nummer gesendet wird:

Code: Select all

WebDriverWait wait = new WebDriverWait(driver, Duration.ofSeconds(60));
wait.until(ExpectedConditions.frameToBeAvailableAndSwitchToIt(By.xpath("//iframe[@title='paypal_card_number_field']")));

WebElement cardNumberInput = wait.until(ExpectedConditions.elementToBeClickable(By.name("number")));

cardNumberInput.click();
cardNumberInput.clear();

Actions actions = new Actions(driver);
for (char c : cardNumber.toCharArray()){
actions.sendKeys(String.valueOf(c)).pause(500).perform();
}

driver.switchTo().defaultContent();
Selbst mit dieser Änderung tritt das Problem manchmal immer noch auf. Ich habe versucht, vor und nach dem Ausfüllen der Kartennummer Wartezeiten hinzuzufügen, aber das Problem tritt immer noch auf. Der Fehler ist zufällig – manchmal funktioniert es, manchmal nicht.
Was könnte dieses Problem verursachen und wie kann ich den PayPal Advanced-Checkout in meiner Automatisierung zuverlässiger machen?

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post