2013-01-16 4 views
0

Description/Étapes:Android WebDriver incapable de saisir du texte dans la 2ème zone de texte (éléments suivants)

Utilisation dernière Android WebDriver (selenium-java-2.28.0.zip) si l'écran est appelé (fichier HTML joint) en utilisant le code suivant:

################################################ 3
WebDriver driver = new AndroidDriver(); 
driver.get("http://10.178.147.244:8080/TestConnected"); 
driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS); 
driver.findElement(By.id("test")).sendKeys("Test"); 

Thread.sleep(10000); 

WebElement ele=driver.findElement(By.id("username")); 
ele.sendKeys("Test"); 
#

le texte est entré dans le premier champ de l'écran, mais l'accent est jamais déplacé à la zone de texte suivante.

Dans toute exécution, le code n'agit que sur un élément à l'écran.

Même essayé d'utiliser suit:

driver.findElement(By.name("test")).sendKeys(Keys.RETURN); 

driver.findElement(By.name("test")).sendKeys(Keys.TAB); 

Quel est le résultat attendu? Que voyez-vous à la place?

Le script doit entrer des valeurs dans toutes les zones de texte disponibles à l'écran.

Version Sélénium: sélénium-java-2.28.0 OS: Android 2.3 Navigateur: Android Browser Version du navigateur: HTC Desire Android Browser

Code WebPage:

<html> 
<head> 

<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> 

<link rel="stylesheet" type="text/css" href="css/mobileAppUI.css"/> 




</head> 
<body > 

<br/> 
<div id="wholeBody"> 


    <table align='center' > 

    <tr id='mdttagtr'> 

     <td width='30%' class="oraLabel"><script type="text/javascript">document.write(LABELS.mdttag)</script></td> 
     <td width='70%'> 
     <input name='test' class="oraInput" type="text" id="mdttag" /> 

     </td> 

    </tr> 
    <tr> 
     <td width='30%' class="oraLabel" id='userLabel'><script type="text/javascript">document.write(LABELS.userId)</script></td> 

     <td width='70%'> 
     <input name='username' class="oraInput" type="text" id="username" maxlength="256"/> 

     </td> 
    </tr> 


</table> 

<hr/> 

+0

actuellement je suis en mesure d'y arriver en utilisant JavaScript Exécuteur dans WebDriver. S'il vous plaît laissez-moi savoir s'il y a une meilleure façon de faire la même chose. –

Répondre

0

Essayez de trouver l'élément par nom et t La méthode sendKeys a été utilisée pour moi.

+0

Il ya le même problème pour le pilote safari et il a été confirmé que c'est un bug webdriver pour pilote safari.Je pense que le pilote Android est également effectué avec ce bug.J'essayais avec XPath, ça n'a pas fonctionné.Mais Par nom, cela a fonctionné. Vous pouvez faire workwround comme ceci.Thnks – Madhu

0

Vous avez entré un ID erroné pour le premier élément d'entrée.

driver.findElement(By.id("test")).sendKeys("Test"); 

//here id mention in your html is "mdttag" 
<input name='test' class="oraInput" type="text" id="mdttag" /> 
0

Pour saisir du texte dans la deuxième sélection d'utilisation du champ de texte « par nom »

Questions connexes