问题标签 [ios-ui-automation]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
iphone - 为什么我无法使用 UI 自动化脚本访问 iPhone 应用程序中的后退按钮?
我有一个简单的函数,它应该检查视图是否在主界面,如果不是,将其带到主界面:
现在,我无法通过错误“找不到'返回'按钮!”。它就在上面,在左角,正盯着我,嘲弄我!
这UIATarget.localTarget().frontMostApp().logElementTree()
给了我以下树:
日志清楚地显示了“返回”按钮,但我没有得到适当的参考。谁能在这里指出我正确的方向?难道我做错了什么?仅供参考,我尝试从frontMostApp()、mainWindow() 和navigationBar() 访问buttons()。都失败了。
iphone - iOS 测试/规范 TDD/BDD 和集成与验收测试
在 iPhone 上用于行为驱动开发的最佳技术是什么?有哪些开源示例项目可以证明这些技术的合理使用?以下是我发现的一些选项:
单元测试
测试::单元样式
RSpec风格
- 猕猴桃(也带有嘲弄和期望)
- 雪松
- 带有UI 自动化的Jasmine ,如dexterous 的 iOS-Acceptance-Testing 规范中所示
验收测试
硒风格
UI 自动化(在设备上工作)
- UI 自动化仪器指南
- UI 自动化参考文档
- Tuneup js - 用于 UIAutomation 的酷库。
-
可以使用Cucumber(用 JavaScript 编写)来驱动 UI 自动化。这将是一个很棒的开源项目。然后,我们可以编写Gherkin来运行 UI 自动化测试。现在,我只写 Gherkin 作为评论。
更新:Zucchini 框架似乎融合了 Cucumber 和 UI 自动化!:)
旧博客文章:
黄瓜风格
Frank和iCuke(基于Cucumber 与 iPhone 的对话)
- Frank Google Group的活动比iCuke Google Group 多得多。
- Frank 同时在设备和模拟器上运行,而 iCuke 仅在模拟器中运行。
- Frank 似乎有一套比iCuke 的步骤定义更全面的步骤定义。而且,Frank 在他们的 wiki 上也有一个步骤定义纲要。
- 我建议我们合并 iCuke 和 Frank(类似于 Merb 和 Rails 合并的方式),因为它们有相同的共同目标:Cucumber for iOS。
Zucchini Framework使用 Cucumber 语法编写测试,并使用 CoffeeScript 进行步骤定义。
加法
- 用于模拟的OCMock
- OCHamcrest和/或Expecta的期望
结论
好吧,显然,这个问题没有正确的答案,但这是我目前选择的:
对于单元测试,我曾经在 XCode 4中使用OCUnit/SenTestingKit 。它简单而可靠。但是,我更喜欢 BDD 语言而不是 TDD(为什么 RSpec 比 Test::Unit 更好?),因为我们的语言创造了我们的世界。所以现在,我将Kiwi 与 ARC和Kiwi 代码完成/自动完成一起使用。我更喜欢 Kiwi 而不是 Cedar,因为它建立在 OCUnit 之上,并带有 RSpec 风格的匹配器和模拟/存根。更新:我现在正在研究 OCMock,因为目前Kiwi 不支持存根免费桥接对象。
对于验收测试,我使用 UI 自动化,因为它很棒。它使您可以记录每个测试用例,从而自动编写测试。此外,Apple 开发了它,因此它有一个充满希望的未来。它也适用于设备和 Instruments,它允许其他很酷的功能,比如显示内存泄漏。不幸的是,使用 UI 自动化,我不知道如何运行 Objective-C 代码,但使用 Frank 和 iCuke,你可以。因此,我将只使用单元测试来测试较低级别的 Objective-C 内容,或者UIButton
仅为TEST
构建配置创建 s ,单击它时将运行 Objective-C 代码。
您使用哪些解决方案?
相关问题
iphone - iOS UIAutomation:是否可以将屏幕截图与参考图像进行比较?
标题已经说明了。我正在寻找一种解决方案,将 UIAutomation 脚本中使用 target.captureScreenWithName 截取的屏幕截图与一些参考图像进行比较。测试一些自定义视图会非常好。
iphone - UI 自动化工具可以从命令行运行吗?
有没有办法UIAutomation
通过终端打开仪器?
是否可以编写一个AppleScript
打开Apple的UIAutomation
工具并加载要测试的应用程序?
你能告诉我有什么方法可以通过脚本或命令行打开UIAutomation
并选择要测试的应用程序,以及选择测试脚本吗?
iphone - 自动调用 iPhone 应用程序
是否可以通过 UIAutomation 调用 iPhone 模拟器并启动应用程序?如果是这样,是否可以通过 shell 脚本或 Java 调用 UIAutomation 脚本?
或者我可以通过applescript做到这一点吗?谢谢
iphone - 在 iPhone 应用程序中使用 UIAutomation 在主视图上搜索元素确实很慢
当我使用 for 循环时,它调用 UIATarget.localTarget().frontMostApp().mainWindow().elements(); 要在主视图上搜索特定元素,它的运行速度非常慢。有没有人遇到过这个问题?如果是这样,任何建议
iphone - Instruments 总是启动 iPad Simulator for Universal Apps with Automation,如何强制它使用 iPhone Simulator?
我使用 iOS 4.2 和 Xcode 3.2.5 创建了一个通用二进制文件。我正在尝试对应用程序进行一些自动化测试,并且由于 iPad 和 iPhone 版本之间的界面略有不同,因此我有单独的 UIAutomation 脚本。不幸的是,无论我做什么,当我单击 Instruments 中的录制按钮时,它总是使用 iPad 模拟器启动应用程序。如何强制 Instruments 启动 iPhone 模拟器?
通用应用程序在所有 3 种模拟设备(iPhone、iPhone (Retina) 和 iPad)的模拟器中运行良好。我可以通过 Xcode 管理 Active Executable,并且“构建和运行/调试”工作正常,正确使用指定的模拟器。当我启动 Instruments 时,我选择 iOS Simulator > All > Automation,然后为 iPhone 选择我的自动化脚本,然后将目标设置为 project-name/build/Debug-iphonesimulator/project-name。
iphone - UIAutomation iPhone App 从文件中读取
这是关于 iPhone App UIAutomation 的。
我能够自动化应用程序流程,现在我想向我们读取文件数据,即文本文件/csv 文件。
你能告诉我如何在 MAC 机器上读取文件吗?
由于正常的javascript命令不起作用。
非常感谢。
问候,
iphone - 在测试 iPhone 应用程序时,仅使用 Leaks 工具就足够了吗?
我即将完成我的第一个 iPhone 应用程序,我想知道是否有一组步骤用于检查应用程序的内存泄漏、性能等?
使用泄漏仪器检查是否足够?
是否需要运行任何一系列测试?你们有什么教程/文件可以指点我吗?
xcode - 如何让 UIAutomation、模拟器和 Xcode 调试器同时运行?
谁能告诉我有关如何使 Instruments 运行 UIAutomation 脚本并使用在模拟器中运行的调试器启动 iPhone 应用程序的文档?
约束:我只有 iPhone 3g 硬件来测试和调试 UIAutomation 的设备只是不能可靠地工作。通常测试脚本只是运行以确保一切通过,但现在存在一个奇怪的错误,只有在 UIAutomation 脚本运行时才会触发(这是一件好事)。该错误不能在手动操作中重复。似乎没有办法将 Instruments UIAutomation 附加到已经在模拟器中运行的进程。没有选择。直接启动 Instruments UIAutomation 不会导致它与调试器一起启动。
我假设可以在 Instruments 编辑活动目标(环境变量、参数、工作目录)中配置一些命令行魔法来实现这一点,但我还没有找到魔法段落。
谢谢,尼尔