UIAutomation iPhone:是否可以将脚本分成几个文件

时间:2011-03-21 17:41:38

标签: javascript iphone ios-ui-automation

我想为一个相当复杂的iPhone应用程序编写UIAutomation(基于JavaScript)测试。我不想使用一个单独的大文件,而是通过使用几个文件来分离测试函数和帮助程序。这有可能吗?你如何构建你的UIAutomation测试?

2 个答案:

答案 0 :(得分:8)

嘿。
是的。尽管浏览器中没有为JS实现import关键字,但它是在Instruments中实现的。您只需在使用Instruments运行的'master'JS文件中编写#import "somefile.js"。我没有尝试从您提供给乐器的原始文件以外的位置包含文件,但该位置的子文件夹工作 请查看基于this post的以下示例:

#import "fileInTheSameDirectory.js"
#import "SubDirectory/fileInSubDirectory.js"  

答案 1 :(得分:2)

UIAutomation 无法处理大型脚本文件,您最终可能会使用 #include 指令捆绑测试,辅助函数等。但是,这是您可以手动运行多个测试的唯一方法,存储在单独的文件中。

在构建一个能够运行测试集和套件的小型(600-700行或25KB代码)JS框架时,我遇到了这个问题。

我提出的测试结构:

#import "test_scripts.js"
#import "test_data.js"
#import "helper_tools.js"

tools.runTestSet(TestContainer);

TestContainer 是指包含所有测试用例作为其字段/成员的对象的链接。 test_data.js 将数据封装在JSON容器中。

P.S。起初我认为 UIAutomation 有很大的潜力,但随着时间的推移我感到很失望。您无法使用此工具运行完整的自动化测试周期。另外,请记住,它只为您提供了使用UI的API:无法访问“后端”进程。