首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

解放程序猿(媛)双手---iOS UI自动化测试

然而越是困难事,越是研究少,就越发有挑战性。有挑战性事大多又会带来不菲收益,如果能在iOS上做出大规模可持续运行自动化测试,那么对iOS测试演进无疑是一次大推动。...在大量工具都无法在iOS上施展拳脚时,UI testing姗姗而来,带给我们惊喜和希望。...固定参数按照所给出类型传就可以了,而可变参数,需要我们按照一定格式进行参数传递。...关于整体架构内容在图中最上层。一个是集成在XCODE里边自动化运行框架和脚本,另一个是分析log日志自动化log日志分析系统。...这些数据是在没有与开发约定代码规范时候,随着后期合作,这部分UI变动导致问题中元素属性变动问题将会降低,但是纯需求变动问题还是保持一定比例。 ?

4.3K81
您找到你想要的搜索结果了吗?
是的
没有找到

Xcode 7 自动测试XCTestCase

关于这方面的内容,可以参看下 NSHipster 这篇文章里关于 Mocking in Swift 部分内容。 不过这些都是单元测试 (Unit Test) 相关内容。...关于这些 UI 测试框架更详细介绍,可以参看 objc 中国上 UI 测试和截图测试两篇文章。不过这些方法有一个共同特点,那就是配置起来十分繁琐,使用上也有诸多不便。...关于具体可用属性,可以参看 XCUIElementAttributes 文档。...默认情况下,我们可以通过 label 属性来获取一个 Label 文字。 到此为止,这个简单 demo 就书写完毕了。...在这个限制下,我们只能得到 UI 代理对象,而不是 UI 元素本身,这让我们无法得到关于 UI 元素更多信息 (比如直接获取 UI 元素中内容,或者与 ViewController 中相关)

1.7K70

基于 KIF iOS UI 自动化测试和持续集成

客户端 UI 自动化测试是大多数测试团队研究重点,本文介绍猫眼测试团队在猫眼 iOS 客户端实践基于 KIF UI 自动化测试和持续集成过程。...测试框架选择 iOS UI 自动化测试框架有不少,其中 UI Automation 是 Apple 早期提供 UI 自动化测试解决方法,用 JavaScript 编写测试脚本,通过标签和可访问性获得...鉴于上述优势,我们选择了 KIF 作为 iOS UI 自动化测试框架。...用例编写与组织 (1)accessibility 属性设置 accessibility 属性是 Apple 给视觉障碍人群提供完全无障碍使用基本属性,该属性表明了 UI 元素可访问性、是什么、做什么以及会触发什么样操作...设置建议:设置 AccessibilityLabel 属性要有实际意义(用户可理解),因为设置这个属性后用户可以通过 VoiceOver 访问;用户不可访问控件,比如某些放置控件容器等应该设置为

2.3K60

译文: iOS Unit Testing and UI Testing Tutorial

原文: iOS Unit Testing and UI Testing Tutorial,作者:Audrey Tam。更新于2017年3月13日。...以下为正文: 本教程讲解如何往iOS apps中添加「单元测试/unit tests」、「UI测试/UI tests」,以及如何检查「代码覆盖率/code coverage」。...Version: Swift 3,iOS 10,Xcode 8 很多开发者觉得写测试没什么卵用,但是,如果没有「测试」,你原本牛逼闪闪app,很容易变成一坨翔,所以,「测试」是必不可少。...「UI测试工作原理——查询appUI对象、合成事件,然后将他们发送到这些对象。这个API允许开发者仔细检查UI对象属性、状态,以便将他们与预期状态进行比较。...希望看完这个关于iOS Unit Testing 和 UI Testing 教程后,你可以胸有成竹地去测试所有东西。 这里是已经完成项目。

1.3K30

WPF 关于将 ManipulationDeltaEventArgs Manipulators 属性返回修改为 ReadOnlyCollection 类型提议

这是一个 WPF 框架 API 变更提议,记录一下博客 讨论地方是: How about change the type of ManipulationDeltaEventArgs.Manipulators...Manipulators 属性,当前返回是 IEnumerable 类型。...然而此类型返回用起来比较坑,例如获取元素数量,就需要用到 Linq Count 方法 然而在 WPF 框架实现,在 Manipulators 属性获取,是采用此方法获取 /// <...,另一个就是,为什么在 _manipulators 是空时候,传入 new List 初始个数是 2 提议: 修改 ManipulationDeltaEventArgs Manipulators...属性返回为 ReadOnlyCollection 或者 IReadOnlyCollection 或者 IReadOnlyList 等类型

1K20

一次iOS上脱机UI自动化测试方案尝试

感觉已经成功了一大半了,但又有个新问题,我们测试除了接口类型,其他基本都是和UI密切相关,GHUnit只显示用例UI,无法看到我们被测APPUI,这样框架能否满足我们UI自动化呢?...这里也找了一些其他第三方框架,从描述上看,没有发现能够满足我们想要脱机UI自动化框架。 方案尝试 从前面的描述上看,已经基本可以确定市面上目前还是没有这样框架,可以支持脱机UI自动化测试。...不过,当时刚好开发完iOS GT组件,又看到KIF具备UI控件识别的能力,GHUnit具备用例管理能力。于是,我就想,是不是可以将KIFUI控件识别能力和GHUnit用例管理能力结合在一起呢?...然后放在GT插件上,利用GT能够和被测应用共存UI能力,是不是就能达到脱机UI自动化测试效果呢? 我是这么想,也是这么做。...作者:廖海珍,腾讯专项测试工程师,8年工作经验,3年后台开发,4年ios开发测试,1年android测试。提交专利43篇,工作中喜欢探索新思路并尝试实践。

1.8K70

全新Swift从入门到进阶实战探探iOS APP

Swift作为Apple推出新编程语言,旨在简化iOS和OS X应用开发过程。...这使得学习Swift成为iOS开发者或计划成为iOS开发者首要任务2。Swift语言与Objective-C比较有哪些关键差异?...这使得Swift对于初学者来说更加友好,尽管仍有一些关于基本元素问题,以及关于工具集(编译器、Xcode、库)问题讨论11。...在开发iOS应用程序时,有效地使用Swift和UIKit框架进行用户界面设计(UI设计)是提高开发效率和产品质量关键。我们可以总结出一些策略和建议。...同时,利用现有的框架和工具来辅助开发过程,也是提高UI设计质量重要策略。在iOS应用开发中,有哪些高级技巧可以提高Swift编程语言性能?

19210

iOS之深入解析Xcode 13正式版发布40个新特性

; 在适用于 macOS 12 应用程序中,您可以使用属性检查器中 localize 属性在非系统 NSMenuItem 上配置本地化等效键选项; 在 iOS 15 应用程序中,可以使用属性检查器中...localize 属性在非系统 UI 菜单命令上配置本地化等效键选项。...枚举自定义如何将性能测试自定义指标的测量值与设置基线进行比较; XCTest 现在能够在受支持 iOS 设备上 UI 测试中合成指针交互; Xcode 现在为在运行测试时崩溃进程收集代码覆盖率数据...函数现在包括用于自定义某些选项 Swift 重载,而无需创建 XCTExpectedFailure.Options 实例; XCTest 现在能够在 watchOS UI 测试中合成 Digital...SortDescriptor、KeyPathComparator 和 SortComparator API 提供了一个 Swift 接口来表达可归档排序规则。

8.6K40

Swift开发React Native组件

关于封装原理,大家可以访问我《React Native移动开发实战》。 基础 学习本章知识,需要读者具备一定OC和Swift语言基础,读者可以从下面的链接中获取学习资料。...:UIKit框架官网 Playground 测试JS代码我们要么用node执行测试文件,要么直接在console中直接测试,在Xcode也提供了这样场所。...Storyboard 在iOS发展历程中,IOS开发经历了三种主要流派:使用代码手写UI及布局;使用单个xib文件组织viewController或者view;使用StoryBoard来通过单个或很少几个文件构建全部...UI。...混编 众所周知RN是用OC编写,那如何才能是用Swift来编写RN组件呢,答案就是IOS原生就支持OC和Swift混编应用。

2.8K90

干货 | 携程酒店iOS动态View探索

大家一直都在寻求能够动态更新业务方法,关于这方面的框架也是层出不穷。...JSValue JSValue则是一个JavaScript数据类型在Objective-C或Swift包装对象,借助于这个对象我们可以在Native代码和JavaScript代码之间互相传,这两者之间对应关系如下图所示...这是一个在Native当中JavaScript执行环境,我们在Native环境中用JSContext来执行刚才那个Demo,就会得到一个对应JSValue,这个JSValue用[JSValuetoObjct...这个方案非常适合做一些轻量级又需要经常不定期更新UI,比如节日氛围或者城市包装UI。...这些UI经常会跟随节假日更新,用这个方案可以轻松在线更新UI,不用通过服务端下发一堆样式来控制,减轻了服务发布压力和不必要服务交互。

74920

iOS UI 自动化测试原理以及在 Trip.com 应用实践

App UI 自动化测试现状 自动化测试可以分为白盒测试、黑盒测试以及灰盒测试,本文主要围绕 Apple 官方提供 XCUITest 测试框架,逐步阐明 iOS 操作系统下 UI 自动化测试原理、...iOS 自动化测试工具链 编写了基本 UI 测试 UITest Target 方法之后,我们可以利用相关命令行工具链,将 iOS UI 自动化测试脚本化,从而可以方便集成入 CI 流程。...为基础 iOS UI 自动化测试技术。...Macaca 基于 XCUITest 和 Accessibility 设计 iOS UI 自动化测试技术 驱动项目利用 Swift 编写,社区生态相对不完善,维护较不活跃,用户量相对较少。...从入职到现在,我参与了诸如,编译打包时间优化、支持 Swift Coverage 增量覆盖率,CI/CD 流程自动化提升,以及 UI 自动化测试等一系列我之前从未接触过技术,使我个人在这一年时间里,

2K40

重回iOS应用开发

虽然第一个项目还是2014年那会做,但同事们都知道我有过iOS项目的经验,公司客户有了iOS版本需求,自然会想到我来参与这个项目,但具体充当什么角色,我自然是拿不准,期望来主导,但能力经验又有差距...关于iOS技术,现在有好几个可选方案来支撑跨平台开发,reactive native、flutter、weex,但由于这个项目Android端产品已经成熟,所以没有考虑使用跨平台技术来实现,而是直接用...iOS原生技术,其实选择Objective-C还是Swift来作为开发语言,确实是拿不准,毕竟苹果官方教程主推还是Swift,但通过同iOS开发多年经验同学交流后发现,使用Objective-C作为开发语言项目...关于业务架构: UI 业务模块 基础模块 三方组件库&UIKIT & Fundation API 说明UI与业务模块关系,以及业务模块结构描述: UI界面和业务模块关系遵循依赖倒置原则,由UI界面声明...4.使用:一般情况下无需对属性添加 @synthesize ,但一些特殊情形仍然需要,例如protocol中声明属性

41920

你知道在iOS开发工作中为什么有人4k有人40k吗?

Swift 最终肯定会替代Objective-C   有一点不容怀疑:Swift 最终肯定会替代 Objective-C,成为主要 iOS 开发语言。...我们曾经拿猿题库 App 测试过,采用 Swift 和Objective-C 混合编写方案后,应用体积会增加 10M,这对于公司来说还是比较大困扰。...,大家都是软件开发党,不定期分享干货(只有iOS软件开发相关),包括我自己整理一份2018最新iOS进阶资料和高级开发教程   丨深度学习API,了解iOS UI控件   Objc阶段学习只是带你入门...,如果你想进阶,API和UI控件是必须需要学。...UI控件的话,常用有UIView、UITableView、UIScrollView、UIButton、UILable等。你要熟悉这些控件属性和相关操作方法。

2.7K90

一样iOS开发程序员为什么有人4k有人40k?原因就在这里!

一,Swift 最终肯定会替代Objective-C? 有一点不容怀疑:Swift 最终肯定会替代 Objective-C,成为主要 iOS 开发语言。...所有 iOS 开发者都应该花时间学习这门全新语言。 但是,客观地说,Swift 当前生态环境还不够成熟,这包括第三方开源库,文档和教程,甚至是苹果自己编译器。...我们曾经拿猿题库 App 测试过,采用 Swift 和Objective-C 混合编写方案后,应用体积会增加 10M,这对于公司来说还是比较大困扰。...所以,一定要有一个规划,按照自己正确规划去学习,去成长,别原地踏步。 四,深度学习API,了解iOS UI控件 Objc阶段学习只是带你入门,如果你想进阶,API和UI控件是必须需要学。...UI控件的话,常用有UIView、UITableView、UIScrollView、UIButton、UILable等。你要熟悉这些控件属性和相关操作方法。

79000
领券