2016-09-20 1 views
2

Ich versuche, eine Berechnung durchzuführen und dann das Ergebnis in ein Feld mit Selenium Web Driver einzugeben. Aber ich immer die Fehlermeldung „Die Methode Sendkeys (CharSequence ...) in der Art WebElement für die Argumente nicht anwendbar ist (double)“Was an Stelle von sendkey in selen bei der Eingabe eines doppelten Wertes zu verwenden ist

Unten ist mein Code:

import java.util.concurrent.TimeUnit; 

import org.openqa.selenium.By; 
import org.openqa.selenium.WebDriver; 
import org.openqa.selenium.firefox.FirefoxDriver; 

public class ProjectOne { 

    public static void main(String[] args) { 
     // TODO Auto-generated method stub 

     WebDriver driver = new FirefoxDriver(); 
     driver.get("http://www.techno-geek.co.uk/SeleniumPractice/webform1.html"); 
     driver.manage().window().maximize(); 

     driver.findElement(By.xpath(".//*[@id='continue']")).click(); 


     driver.findElement(By.xpath("//input[@id='COB']")).sendKeys("Toronto"); 
     driver.findElement(By.xpath(".//*[@id='DOB']")).sendKeys("19th January 1986"); 
     driver.findElement(By.xpath("//input[@id='color']")).sendKeys("Cream"); 
     driver.findElement(By.xpath("//input[@id='food']")).sendKeys("Pizza"); 


     double a = 14.867; 
     double b = 67.902; 
     double c = 22567.325; 
     double d = 76.908; 
     double r1 = a * b; 
     double r2 = c/d; 


     driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS); 
     driver.findElement(By.id("multiply")).sendKeys(r1);//1009.49903 


     driver.manage().timeouts().implicitlyWait(40, TimeUnit.SECONDS); 
     driver.findElement(By.id("divide")).sendKeys(r2);//293.432738 


    } 


    } 

Antwort

0

Wir haben zu verwenden, Tastaturbefehle (String.valueOf (doublevalue) statt Sendkeys (Wert). der Code unten für mich gearbeitet

driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS); 
     driver.findElement(By.id("multiply")).sendKeys(String.valueOf(r1));//1009.49903 


     driver.manage().timeouts().implicitlyWait(40, TimeUnit.SECONDS); 
     driver.findElement(By.id("divide")).sendKeys(String.valueOf(r2));//293.432738 
2

Sie haben in String-Format konvertieren String.valueOf(doublevalue) verwenden, die mir

arbeitet
Verwandte Themen