发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/131546.html原文链接:https://javaforall.cn
在这个 Travis CI 教程中,学习如何设置流行的持续集成服务,并与 GitHub 集成,以便自动运行测试。
软件测试作为软件生命周期中不可缺少的组成部分,对提高软件质量起着重要作用。随着软件测试的发展,自动化测试技术也得到了很大提高。
客户端 UI 自动化测试是大多数测试团队的研究重点,本文介绍猫眼测试团队在猫眼 iOS 客户端实践的基于 KIF 的 UI 自动化测试和持续集成过程。 测试框架的选择 iOS UI 自动化测试框架有不少,其中 UI Automation 是 Apple 早期提供的 UI 自动化测试解决方法,用 JavaScript 编写测试脚本,通过标签和值的可访问性获得 UI 元素,来完成相应的交互操作。 一些第三方 UI 解决方案以 UI Automation 为基础,对其进行补充和优化,包括扩展型 UI Automa
早期结合Jenkins完成对JAVA的自动化构建部署工作,但app端一直处于手动打包发布状态,占用开发人员时间较多,所以考虑将Android、iOS同样集成到Jenkins中完成自动化构建打包工作,提高测试效率。
本篇博客就是基于上面的想法,给大家介绍编写一个简洁的自动化工具的具体步骤与核心要点。在编写本博客时,我也基于这样的想法开发了一款Mac上的iOS自动构建,打包,发布工具,并且将代码开源在Github,如果有兴趣,你也可以作为参考。
GrowingIO 是基于用户行为数据的增长平台,精准采集用户行为数据是公司业务的基石,只有及时、准确、可靠的采集到数据,才能支撑上层的数据分析,用户画像,运营等业务,所以公司一直非常注重数据采集 SDK(Software Development Kit) 的质量保证工作。
这不是第一次听说flow.ci,记得当时fir.im新出这个服务的时候,我也是心情十分激动的去尝试,结果是只支持安卓,我可以iOS的程序员呀!
Xcode Server是配置在Mac端的一个服务器,在这个服务器上我们可以创建Bot自动执行机器人,软件应用程序在本地(Xcode development Macs)开发过程中,会将代码不断合并到git上(SCM Repository), Bot会在指定的时间将git上的代码拉取到Server上,并且执行需要的操作,例如pod install以及创建ipa上传到蒲公英等,执行完成之后会生成执行报告(Reports),如果有自动化测试的话,还会输出测试统计数据。
首先感谢这篇文章让我受益匪浅,少走很多弯路 iOS开发---微信支付 所以他说的我就不赘述了,不懂可以问我 我按照他的步骤来还是出错了,出现的错误如下 原来是项目少了CoreTelephony.fr
在之前写的IOS自动化教程中,我都是采用的Mac电脑连接ios设备,使用Xcode一个个进行打包,非常麻烦。
本文要点 回归测试不同于其他类型的测试。 回归测试分为多种类型,因为不同的原因,采取不同的方法。 建立回归测试的策略,重点是要考虑上下文和其他一些因素。 回归测试有很多方式和方法。 不同的方法论需要采用不同的回归测试方法。 成本高、耗时长的回归测试对整个交付团队来说是一个令人烦恼的难题。幸运的是,我们有机会让回归测试变得更轻松、更有效。要做到这一点,应该设计一个有效的回归测试策略,充分满足产品的需求,以最佳的成本保证产品质量。这需要了解回归测试的本质,采用它的原因以及执行它的方法。 为什么要进行回归测试 软
随着移动互联网的兴起,APP 测试的越来越被重视!Android 系统因为自己的开源性,测试工具和测试方法比较广为流传,但是 iOS 系统的私密性,导致很多测试的执行都有点麻烦。
Xcode是苹果公司开发的一款集成开发环境(IDE),主要用于开发macOS、iOS、iPadOS、watchOS和tvOS应用程序。
在前面的文章中,我分享了《开源云真机平台-Sonic应用实践》、《开源云真机平台Sonic跨版本升级实践》。目前sonic版本已经升级到了最新的2.0.5,但我接入的都是些Android设备,iOS设备之前也尝试过接入,但没有成功,因为我用的是CentOS系统。这两天又用Windows系统重新试了一下,终于成功接入了。下面简单分享一下实践过程以及其中的一些注意事项。
自动化测试一直是测试领域桂冠上的明珠,几乎所有的测试团队都有建立团队的自动化。测试团队的自动化建设也被认为是团队提效的必经之路,但搭建和使用自动化路但路却并非一帆风顺。搭建自动化但时候有很多框架可以选用,合理但选择适合该团队的框架可以事半功倍,同时选择了框架之后就要受制于框架。使用自动化很多时候因为学习以及维护成本高,让初衷是提效为目的的自动化,成为了加重测试工作量之殇。
笔者入职 Trip.com 已满一年,回顾这一年的工作历程,约一半的时间都在做 UI 自动化测试相关内容。从而,笔者更深入地研究了 iOS 平台下的自动化测试技术,目前也在负责部门 App 自动化测试平台的搭建和维护。故想借这篇文章一并将所踩过的坑以及学习到的技术,系统且全面地整理出分享给大家。
1、将/Users/管理员用户名/Library的MobileDevice文件夹拷贝到/Users/Shared/Jenkins/Library下;
现在很多公司,尤其是研发团队开始使用mac OS了,测试团队也不列外。所以,特意写下 mac OS 下自动化测试的各种环境搭建吧,计划分期写,感兴趣的持续关注。
一直以来,iOS自动化的实现&执行都依赖 Mac 系统,其主要原因是因为需要通过 Xcodebuild 编译&安装 WDA (WebDriverAgent) 到 iOS 设备中,通过WDA实现对被测应用进行操作。而Windows系统无法运行Xcode工具,所以无法运行iOS自动化测试。
Xcode如何下载安装或更新呢?打开Mac机上的App Store,搜索Xcode,进行安装或者更新,注意观察下Xcode的更新日志,可以看到当前版本支持的IOS SDK版本。
众所周知,现在App的竞争已经到了用户体验为王,质量为上的白热化阶段。用户们都是很挑剔的。如果一个公司的推广团队好不容易砸了重金推广了一个APP,好不容易有了一些用户,由于一次线上的bug导致一批的用户在使用中纷纷出现闪退bug,轻则,很可能前期推广砸的钱都白费了,重则,口碑不好,未来也提升不起用户量来了。静下心来分析一下问题的原因,无外乎就是质量没有过关就上线了。除去主观的一些因素,很大部分的客观因素我觉得可以被我们防范的。根据大神们提出的一套开发规范建议,CI + FDD,就可以帮助我们极大程度的解决客观因素。本文接下来主要讨论 Continuous Integration 持续集成(简称CI)
在 Apple 平台上打造精彩超凡的 app 所需要的一切,Xcode 9 都已为您准备好。即使在编辑最大的文件时,它也能保持超乎想象的高速流畅。它比以往更了解您的代码,您可以直接在编辑器中选择和编辑代码结构,甚至进行代码块的转换。 有了全新的强大重构任务,现在您能迅速地完成 Swift, Objective-C,甚至用户界面文件上的变量重命名。基于 Swift 4 的兼容性,Xcode 9 使用同一个编译器来构建已有的 Swift 3 代码和最新的 Swift 4 代码。从此,数据迁移的节奏,您说了算。
前言 众所周知,现在App的竞争已经到了用户体验为王,质量为上的白热化阶段。用户们都是很挑剔的。如果一个公司的推广团队好不容易砸了重金推广了一个APP,好不容易有了一些用户,由于一次线上的bug导致一批的用户在使用中纷纷出现闪退bug,轻则,很可能前期推广砸的钱都白费了,重则,口碑不好,未来也提升不起用户量来了。静下心来分析一下问题的原因,无外乎就是质量没有过关就上线了。 除去主观的一些因素,很大部分的客观因素我觉得可以被我们防范的。根据大神们提出的一套开发规范建议,CI + FDD,就可以帮助我们极大程
appuploader是一款专门为 iOS 和 Android 开发人员设计的自动化工具,可以帮助开发人员轻松解决一些繁琐的任务,例如生成屏幕截图、处理配置文件和发布应用程序等。这个工具可以让开发人员在不同的环境下自定义和运行发布管道,使得整个应用的发布过程更加简单和自动化。
顾翔老师开发的bugreport2script开源了,希望大家多提建议。文件在https://github.com/xianggu625/bug2testscript,
持续集成的目的,就是让产品可以快速迭代,同时还能保持高质量。它的核心措施是,代码集成到主干之前,必须通过自动化测试。只要有一个测试用例失败,就不能集成。
关于iOS自动化构建其实并不复杂,通过一些简单的Git与Xcode指令,加上UI,我们自己也可以动手编写一款自动化构建工具。这在之前的博客中也有涉及,有兴趣的朋友可以在如下地址找到这篇博客:
Mac电脑一台(更新到最新的macOS,此文档使用的为macOS12.3.1,Intel芯片)
许多的开发者依然维护着旧的项目,他们也许需要选择一个证书签名去编译。这个问题讨论怎么在Xcode设置来自动化选择证书通过他们默认的设置,这个问题适用于IOS和MAC的开发人员
相信每一个开发者在初学 iOS 的时候,都有过被 Code Signing 坑过的经历,特别是当旁边没有人指导的时候,这也是当时我个人学习 iOS 的时候最困扰的地方,证书,provisioning profile, code signing 等等这些和实际的开发无关的概念,现在还记得苦苦看文档的经历。
第一个选项的意思是:自动截屏。这个功能能帮我们自动截取APP中的截图,并添加手机边框(如果需要的话) 第二个选项的意思是:自动发布beta版本用于TestFlight 第三个选项的意思是:自动发布到AppStore 第四个选项的意思是:手动设置。
上一篇分享了 Windows环境Appium自动化测试环境搭建 但是由于Win环境不支持iOS设备测试,因此这里再分享Appium+Mac环境搭建,值得一提的是:在Mac环境既可以进行Android也可以进行iOS App自动化测试。
SwiftUI是一个非常方便快速的构建UI的框架,与最新Xcode设计工具无缝协作,可为所有苹果设备构建UI。开发者通过SwiftUI,利用Swift语法就能够完成代码和设计的同步。
在客户端开发过程中,我们经常会需要在不同的开发环境下,需要设置不同的参数、使用不同的代码逻辑。例如:在Debug模式下,我们需要输出log,而在Release模式下所有的log输出应该被关闭。我们通常是通过使用项目中默认的Debug和Release模式来做相应的区分的。Xcode在创建项目时默认创建Debug和Release两种Build Configuration。但有时候这两种Build Configuration可能无法完全满足我们的需求。例如,有时可能还需要一种ADHoc模式来实现通过企业证书来发布企业版APP给测试同学来进行测试或者进行UAT。
OTA(Over-the-Air Technology)空中下载技术,具体参考此文介绍。
游戏发行业务中,对游戏进行测试是保证游戏质量重要的一环。传统人工测试的方法费时费力、容易出错,所以自动化测试技术显然才是更好的解决方案。而 appium 就是自动化测试的最优秀的方案之一,新手上路可以通过 appium 官方的 Getting Started - Appium 快速入门。
https://github.com/flutter/flutter/wiki/Add-Flutter-to-existing-apps#ios
前面分享了STF Andriod设备远程管理平台的搭建和使用 Mac OS环境搭建STF ,但是STF不支持iOS设备连接,虽然现在社区有了STF集成iOS设备的开源方案,但是经过实践不太稳定,后面在Testerhome社区发现了一个新的框架ATX2同时支持Android和iOS设备远程管理,过实践设备连接非常稳定,所以这里分享下这个平台的搭建和使用。
一、报错 报错内容大致如下 /xxxx/xxx.xcodeproj Building for iOS, but the linked and embedded framework ‘xxx.framework’ was built for iOS + iOS Simulator. 诸如此类,可能有些许不同 二、原因 WWDC 2019 推出 XCFramework 启,其实 XCode 11 开始就会有这个问题,但在 XCode 11 上一直是 warning 也就没太注意 XCode12.3 开始
Macbooster 是一款 Mac 平台上一站式系统优化清理工具,提供了 10+ 种必不可少的优化工具 —— 无论是查杀、删除应用残余文件、清理垃圾优化空间,或是修复各类 Mac 常见问题/权限,MacBooster 都能表现得游刃有余,让 Mac 的性能时刻保持巅峰状态。
2. 创建Test Class 如果要在Test Target中创建新的Test Class,选中目标Test Target,使用File -> New -> File ,可以看到有UI TestClass和Unit Test Class两种类,如下图:
最近研究起了 APP 的自动化测试,发现了 Xcode Bot自动化打包测试发布的功能,就开始研究起来。
前期准备工作:可以参考这篇博文http://www.jianshu.com/p/839dc30f2250 iOS版本只需要提供Bundle Id即可
移动端的自动化测试,最常见的是 Android 自动化测试,我个人觉得 Android 的测试优先级会更高,也更开放,更容易测试;而 iOS 相较于 Android 要安全稳定的多,但也是一个必须测试的方向,这个系列文章记录了 iOS 自动化测试的一些实践。
领取专属 10元无门槛券
手把手带您无忧上云