2016-04-29 10 views
0

Wie kann ich Appium physische Tastatur anstelle von Soft-Tastatur verwenden?nicht Tastatur in Appium Test auf IOS zeigen

Wenn Sie einen Code mit xcode ausführen, wird überhaupt keine Tastatur angezeigt, aber mit appium wird die Soft-Tastatur angezeigt.

Ich fand driver.hideKeyboard() und Dismissing keyboard in appium test on iOS, aber sie sind darüber, wie temporäre Tastatur verstecken.

Die andere Lösung war using Command + K, die den Trick tun, aber Appium macht das nicht automatisch und wenn Sie das manuell tun, wenn Appium Simulator startet, wird der Test fehlschlagen !!

+0

Wenn Sie die Tastatur deaktivieren aus zeigt jedes Mal, wenn Sie auf einem Textview eine Aktion ausführen up, Es muss Änderungen im App-Code geben, der dafür gemacht wird. Wenn Sie stattdessen möchten, dass die Tastatur nicht verwendet wird, können Sie 'driver.hideKeyboard()' verwenden und 'sendKeys ()' – nullpointer

Antwort

0

Sie können SendKeys direkt in Ihr gewünschtes Feld verwenden. es ist unabhängig von der Tastatur. Also ich denke, es wird für dich arbeiten. Beispielcode ist unter

public void usingSendKey(By by, String text){ 
     WebElement element = null; 
     element = driver.findElement(by); 
     try{ 
      element.clear(); 
     } 
     catch(Exception e){ 

     } 
     element.click(); 
     element.sendKeys(text); 
    } 
+0

sendKeys funktionieren ohne jedes Problem. Es kann sogar Unicode-Zeichen senden, aber das ist nicht das Problem; Ich möchte nicht, dass die Tastatur angezeigt wird, genau wie beim Ausführen von Code mit xcode. – alizelzele

0

die Lösung Versuchen Sie, wie von mir hier erwähnt: Toggle Software Keyboard for entire test suite in appium python

enter image description here

+0

bereits versucht, wenn Appium öffnet den Simulator die Tastatur zurückkommen, wahrscheinlich es Art der Reset des Simulators (nicht ab Werk zurückgesetzt, da die Anwendungen vorhanden sind) – alizelzele

+0

bleibt die Option 'Hardware-Tastatur anschließen' ausgewählt, wenn Appium den Simulator öffnet? – akvenk