iOS自动化测试方案(一):MacOS虚拟机保姆级安装Xcode教程

news/2024/7/20 22:17:08 标签: macos, ios, xcode, 环境搭建

文章目录

      • 一、环境准备
      • 二、基础软件
      • 三、扩展:usb拓展插件

一、环境准备

1、下载VMware虚拟机的壳子,安装并注册软件(可以百度注册码),最新版本:v17
2、下MacOS系统iOS镜像文件,用于vmware虚拟机安装,当前镜像最新版本:v11.6

二、基础软件

1、MacOS系统找到App Store,这点同iphone操作,搜索Xcode点击安装

2、不出意外的话还是出意外了,原因会告诉你:最新Xcode版本不适合在当前MacOS版本
在这里插入图片描述

3、先关闭app store,MacOS系统桌面右上角苹果图标进入“关于本机”查看macOS版本
在这里插入图片描述

4、实际在下载iOS镜像文件的时候就知道了版本号[iOS镜像已知版本号]
在这里插入图片描述

5、再回到App store应用商店,找到Xcode版本历史记录
在这里插入图片描述

6、往下找,一直到与当前MacOS版本比较接近的Xcode版本号;记住MacOS虚拟机是macOS Big Sur型号;得到Xcode版本12.5.1适合当前版本系统
在这里插入图片描述

7、登录苹果开发工具并下载Xcode:登录mac账号后,搜索Xcode版本号,找到对应Xcode版本下载安装
在这里插入图片描述

8、下载后双击解压缩得到Xcode.app,将Xcode.app复制到Applications替换原有的Xcode,

若有其他App在Appstore中因为macOS版本要求过高无法安装时,也可采用类似方法手工安装。
在这里插入图片描述
这个过程稍久,签名验证、解压
在这里插入图片描述
直到解压得到Xcode安装包,双击安装即可
在这里插入图片描述

9、安装过程:就是同意、下一步、验证;

唯一不同的是没有win系统可以选择安装路径
在这里插入图片描述
Xcode安装components工具组件
在这里插入图片描述

10、安装成功,启动应用
在这里插入图片描述

11、点击create创建新项目,选择app【这里不需要管,咱们是测试,不是iOS developer】
在这里插入图片描述

12、打开终端输入xcrun,如果没有它提示是否安装。
在这里插入图片描述

13、安装软件包管理器Homebrew

测试使用:/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"  它被拦了
建议使用国内镜像:/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"

在这里插入图片描述

1、执行后,第一步选择镜像源
2、确认开始执行
3、输入本机密码
4、会弹窗安装git(没弹是因为前面还在安装xcrun)
在这里插入图片描述
Y,我也不知道有啥,反正就是继续深造
在这里插入图片描述

14、保留卸载命令

/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/HomebrewUninstall.sh)"

Xcode开发工具安装完成,结束!

三、扩展:usb拓展插件

mac虚拟机已经安装好了,需要将iphone设备与虚拟机连接起来
在这里插入图片描述
通过usb将win系统的压缩包给解压到mac系统
在这里插入图片描述
双击zip解压即可
在这里插入图片描述
虚拟机通过usb识别,在xcode可以选择识别的iphone设备即可
在这里插入图片描述

日拱一卒无有尽,功不唐捐终入海!


http://www.niftyadmin.cn/n/5040764.html

相关文章

【操作系统】实验一 Linux初步

文章目录 Linux初步一、实验目的二、实验内容 Linux初步 一、实验目的 通过proc文件系统观察整个Linux内核和系统的一些重要特征,并编写一个程序,使用proc文件系统获得以及修改系统的各种配置参数。 本实验需要学生具有Linux的基本操作技能&#xff0c…

1536. 排布二进制网格的最少交换次数;754. 到达终点数字;1106. 解析布尔表达式

1536. 排布二进制网格的最少交换次数 核心思想:贪心。枚举每一行,然后去找离这行最近的满足要求的那一行。我们用j保存每一行的最后一个1,那么尾部的0个数为n-1-j,每一行需要的0个数为n-i-1,所以得出结论 i > j。然…

从零学习开发一个RISC-V操作系统(三)丨嵌入式操作系统开发的常用概念和工具

本篇文章的内容 一、嵌入式操作习系统开发的常用概念和工具1.1 本地编译和交叉编译1.2 调试器GDB(The GNU Project Debugger)1.3 QEMU模拟器1.4 项目构造工具Make 本系列是博主参考B站课程学习开发一个RISC-V的操作系统的学习笔记,计划从RISC…

软件设计师笔记系列(一)

😀前言 在日常生活和工作中,我们依赖于各种各样的计算机系统来完成一系列复杂的任务。计算机系统不仅仅是硬件设备的集合,它还包括一系列用于协调硬件工作的软件和协议。了解计算机系统的基础知识,包括其构造和功能,是…

【linux】paramiko介绍 + 路由器设置tc命令使用

背景:要给网络灵活的设置各种带宽限制,通过对路由器下发tc命令实现。设置python脚本的ssh链接 tc脚本下发 针对某一个id进行配置。 Paramiko 是一个用于在 Python 中进行 SSH(Secure Shell)协议通信的库。 它提供了在远程服务器…

Gitee使用方法

Gitee是一个基于 Git 的代码托管和协作平台,具有免费、稳定等特点,并且能够与国内的Gitee社区、码云等服务相结合使用。 以下是使用Gitee的主要步骤: 注册账号:访问Gitee官网,点击“注册”按钮,填写注册信…

springboot druid多数据源配置,及druid监控

基础配置&#xff1a; springboot2.x版本 jdk1.8 依赖&#xff1a; <dependency><groupId>com.alibaba</groupId><artifactId>druid-spring-boot-starter</artifactId><version>${druid.version}</version> </dependency> &…

【C语言】求一个整数的二进制序列中1的个数的三种方法

方法一&#xff1a;逐位%2法 该方法的初步测试代码如下: int NumberOf1(int n) {int count 0;while (n){if (n % 2 1){count;}n n / 2;}return count; } 众所周知&#xff0c;数据在内存里以补码的形式存储&#xff0c;这是为了简化计算机的结构设计&#xff0c;同时也提…