iOS自动化测试方案(二):Xcode开发者工具构建WDA应用到iphone

简介: 这篇文章是iOS自动化测试方案的第二部分,详细介绍了在Xcode开发者工具中构建WebDriverAgent(WDA)应用到iPhone的全过程,包括环境准备、解决构建过程中可能遇到的错误,以及最终成功安装WDA到设备的方法。

一、环境准备

1.1、软件环境
  • VMware+macos big sur虚拟机
  • Xcode版本:12.5.1
  • iPhone版本:16.5
  • MacOS版本:11.6
  • WDA下载facebook
1.2、硬件环境
  • iphone 8p 真机
  • 台式或笔记本电脑(肯定不是MacOS系统)
1.3、查看版本

1、macOS Big Sur版本型号
在这里插入图片描述

2、Xcode版本型号
在这里插入图片描述

下载WebDriverAgent,过程略!链接地址中间的appium可以是facebookarchive。

二、安装WDA过程

1、进入WebDriverAgent项目根目录,双击打开WebDriverAgent.xcodeproj,然后在Xcode中的TARGETS里选中WebDriverAgentLib,按照下图数字序号依次点击,注意步骤4要开启自动管理签名。
在这里插入图片描述

2、在Team选项那里添加帐户然后选中,这里的账户可以是个人免费账户也可以是付费开发者账户;
在这里插入图片描述

3、添加账号,注册个人免费账号,没有appleId账号的需要自己,点我去注册
在这里插入图片描述

4、还在同一个项目中,需要注意的是咱们主体是webdriveragentrunner,设置build settings,修改bundleId,它的是唯一;
在这里插入图片描述

5、出现这一步,是usb数据线连接iphone真机设备,VMware本身是不支持与宿主机共用usb,所以需要选择iphone连接的是宿主机还是虚拟机
需要安装Unlocker插件,解锁vmware能支持安装MacOS系统
在这里插入图片描述

6、选中项目>可以看到iOS Device真机,下面的Simulators表示是Xcode提供的虚拟机型号
在这里插入图片描述

2.7、构建失败,这类错误有很多,比如在选择开发者账号后,就会提示:Failed to register bundle identifier表示应用唯一注册失败

在这里插入图片描述
在这里插入图片描述

8、怎么解决?回到第四步,正确选择Bundle settings设置应用的bundle identifier;再回来错误就消失了。
在这里插入图片描述

错误消失术
在这里插入图片描述

2.9、第二个错误,完全是无妄之灾,IntegrationApp是啥?

在这里插入图片描述

10、在构建时错误,消除这个错误的做法同第四步,将这个应用的bundle身份ID修改一下,建议使用时间戳
在这里插入图片描述

错误消失术
在这里插入图片描述

11、选择product scheme和在targets中选择想过一样
在这里插入图片描述

12、回顾错误是如何消失的
在这里插入图片描述

13、回到第六步,可以开始build
在这里插入图片描述

14、一般先建议build for testing
在这里插入图片描述

15、如果build test成功,就可以product–>Test
在这里插入图片描述

16、提示构建成功,如果失败呢?[实际可能已经安装在iphone真机了,需要去iphone设置相信账号]
在这里插入图片描述

在iphone真机会有弹窗提示
在这里插入图片描述

设备–通用–VPN与设备管理
在这里插入图片描述

信任开发者账号
在这里插入图片描述

再次构建,就会成功了
在这里插入图片描述

17、每次构建前,可以修改bundle identifier,表示可以在设备中可以安装多个同名APP(可能在数量方面有所限制)
在这里插入图片描述

18、屡试不爽,构建成功。
在这里插入图片描述

同一个真机设备,可以安装多个WDA服务端[相对于主机它就是服务端]
在这里插入图片描述

19、哦豁,出现了限制,就是咱们的是个人免费账号,结果安装个数超限了。
在这里插入图片描述

安装WDA成功到设备!

相关文章
|
6天前
|
机器学习/深度学习 人工智能 运维
构建高效运维体系:从自动化到智能化的演进
本文探讨了如何通过自动化和智能化手段,提升IT运维效率与质量。首先介绍了自动化在简化操作、减少错误中的作用;然后阐述了智能化技术如AI在预测故障、优化资源中的应用;最后讨论了如何构建一个既自动化又智能的运维体系,以实现高效、稳定和安全的IT环境。
|
7天前
|
设计模式 安全 Swift
探索iOS开发:打造你的第一个天气应用
【9月更文挑战第36天】在这篇文章中,我们将一起踏上iOS开发的旅程,从零开始构建一个简单的天气应用。文章将通过通俗易懂的语言,引导你理解iOS开发的基本概念,掌握Swift语言的核心语法,并逐步实现一个具有实际功能的天气应用。我们将遵循“学中做,做中学”的原则,让理论知识和实践操作紧密结合,确保学习过程既高效又有趣。无论你是编程新手还是希望拓展技能的开发者,这篇文章都将为你打开一扇通往iOS开发世界的大门。
|
8天前
|
搜索推荐 IDE API
打造个性化天气应用:iOS开发之旅
【9月更文挑战第35天】在这篇文章中,我们将一起踏上iOS开发的旅程,通过创建一个个性化的天气应用来探索Swift编程语言的魅力和iOS平台的强大功能。无论你是编程新手还是希望扩展你的技能集,这个项目都将为你提供实战经验,帮助你理解从构思到实现一个应用的全过程。让我们开始吧,构建你自己的天气应用,探索更多可能!
28 1
|
5天前
|
运维 jenkins 持续交付
自动化运维之路:构建高效CI/CD流水线
在软件开发的快节奏中,持续集成和持续部署(CI/CD)流水线是提升效率、保障质量的关键。本文将引导你理解CI/CD流水线的重要性,并手把手教你如何搭建一个高效的自动化运维系统。通过实际代码示例,我们将一步步实现从代码提交到自动测试、部署的全流程自动化,确保软件交付过程既快速又可靠。
|
4天前
|
机器学习/深度学习 运维 监控
构建高效运维体系:从自动化到智能化的演进之路
在当今数字化时代,运维工作的重要性日益凸显。随着企业业务的不断扩展和技术的日新月异,传统的运维方式已难以满足现代企业的需求。因此,构建一个高效、智能的运维体系成为了企业发展的关键。本文将探讨如何从自动化逐步演进到智能化,以实现运维工作的高效化和智能化。
|
4天前
|
机器学习/深度学习 运维 监控
构建高效运维体系:从自动化到智能化的演进之路
在当今数字化浪潮中,运维作为信息技术的重要支柱,其重要性日益凸显。本文将探讨如何通过自动化和智能化手段,提升运维效率,保障系统稳定性,促进业务持续发展。
|
20天前
|
敏捷开发 运维 Prometheus
构建高效运维体系:从基础架构到自动化管理
本文探讨了如何通过优化基础架构、引入自动化工具和流程,以及加强团队协作,构建高效的运维体系。通过案例分析和实践建议,帮助运维人员实现系统的稳定性、可靠性和可维护性。
|
14天前
|
机器学习/深度学习 运维 Cloud Native
构建高效运维体系:从自动化到智能化的演进之路
在当今数字化时代,运维作为信息技术的重要支柱,其效率与创新能力直接关系到企业信息系统的稳定性和业务连续性。本文将探讨如何通过技术手段,实现运维从传统手工操作向自动化、智能化的转变,进而构建一个高效、可靠的运维体系。我们将从自动化工具的应用开始,逐步深入到智能运维的实践,最终展望云原生架构下的运维未来趋势。
|
18天前
|
机器学习/深度学习 人工智能 运维
构建高效运维体系:从自动化到智能化的演进之路
在当今数字化时代,运维作为保障企业IT系统稳定运行的关键环节,正经历着前所未有的变革。本文将探讨如何通过实施自动化和引入智能化技术,构建一个更加高效、可靠的运维体系,以应对日益复杂的业务需求和技术挑战。
32 1
|
20天前
|
存储 IDE 开发工具
移动应用开发之旅:打造你的首个iOS应用
【9月更文挑战第23天】在数字化浪潮中,移动应用已成为连接用户与数字世界的关键桥梁。本文将带领读者踏上开发属于自己的第一个iOS移动应用的旅程,从理解移动操作系统的核心概念出发,逐步深入到实际的应用构建过程中。通过简洁明了的语言和具体的代码示例,我们将一起探索如何在苹果的iOS平台上实现一个简单的“待办事项列表”应用,让读者不仅能够学习到编程知识,还能体会到将想法转化为现实产品的成就感。无论你是编程新手还是希望扩展技能的开发者,这篇文章都将为你提供一个实用的指南,帮助你迈出成为移动应用开发者的第一步。