Domanda

Dato che sto usando lo strumento Uiautomation degli strumenti, ho bisogno di informazioni nel seguente:

1) Esiste una procedura per dare i dati in modo dinamico. Ad esempio, se ho bisogno di utilizzare questo script per testare diversi dati per TextField, come posso ottenere senza modificare lo script per il valore di Textfield hardcoded? Non voglio fare attraverso il ciclo manuale in JavaScript? È possibile utilizzare SQLite attraverso il quale JavaScript prenderà l'elenco dei valori del campo di testo? Sono una nuova Uiautomation negli strumenti in iOS. La seguente riga è il primo comando in script

        UIATarget.localTarget().frontMostApp().mainWindow().textFields()["username"].setValue("test");

Ma voglio dare setValue nel seguente comando tramite Terminal senza alterare lo script effettivo

  instruments -t /Applications/Xcode.app/Contents/Applications/Instruments.app/Contents/PlugIns/AutomationInstrument.bundle/Contents/Resources/Automation.tracetemplate <full_path_to_application> -e UIASCRIPT <path_to_script.js> -e UIARESULTSPATH <output_results_path>

Qualcuno può aiutare a dare il setvalue attraverso il comando sopra dyanmicamente? Qualche altro modo per dare setvalue per il nome utente dinamicamente senza alterare manualmente lo script?

2) È possibile verificare i componenti e gli attributi dello schermo attraverso JavaScript in Uiautomation?

È stato utile?

Soluzione

1. Sì. Dovresti scrivere uno script a livello di sistema che genera codice JavaScript dai dati e chiama gli strumenti dalla riga di comando. Uno script di esempio è:

#!/bin/bash
echo 'var thisIsAGeneratedInput = "Sample Input variable";' > input.js
instruments -t test.tracetemplate your_app_with_path.app -e UIASCRIPT test.js

Il file "test.js" dovrebbe apparire:

#import "input.js"
UIALogger.logMessage(thisIsAGeneratedInput);

2. La funzione value() è il modo corretto per ottenere le informazioni richieste, name() Restituisce l'ID accessibilità se fornito. Nota: in Xcode 5 value() potrebbe non funzionare, uso name() Per la soluzione alternativa, ma prima della versione 5 era OK.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top