问题
I have a script like so:
var target = UIATarget.localTarget();
var mainWindow = target.frontMostApp().mainWindow();
var element = mainWindow.textFields()["UserID"];
element.setValue("Hello World");
UIALogger.logStart("Logging element tree ...");
target.logElementTree();
UIALogger.logPass();
What I want to do is read a text file or database connection, so I can replace the "Hello World" with either a value from a text file or a database query. Is this possible in the Instruments application with using javascript to control UI Automation for the iphone simulator?
回答1:
Yes it is possible. You can acquire every data that you are able to acquire in a bash script. Write a script file that prints the desired information to the standard output. For example
#!/bin/bash
cat myfile
You can run this bash-script from UIAutomation and get the output of it with this command
var result = target.host().performTaskWithPathArgumentsTimeout(full_path_to_your_script, [""], 10);
Now your can use the output of your bash script:
element.setValue(result.stdout);
来源:https://stackoverflow.com/questions/19008544/read-data-from-a-database-or-text-file-in-instruments-javascript-script