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

测试开发:推荐一款阿里最新 Python 自动化开源工具!

不依赖Xcodebuild,可以运行在Mac,Linux,Windows ,即使你没有Mac电脑,也能跑iOS自动化。...一句话概况:tidevice它是一款跨平台的自动化开源工具,不依赖 Xcode 就可以启动 WebDriverAgent( WDA ),这也就意味着以后Windows 可以直接运行 iOS 自动化脚本了...-U "tidevice[openssl]" (推荐) pip3 install -U tidevice (缺少设备配对功能) 2.查看是否安装成功 tidevice -v 3.设备安装WebDriverAgent..."udid").connect_instruments() # 设备全部App信息列表 包含 系统应用和插件,通过 Type 可以区分App apps = instruments.app_list()...依赖pip3 install -U facebook-wda接着,以酷狗App例,编写自动化脚本并运行测试,代码如下: # -*- coding:utf-8 -*- import wda import

1.2K10

mac OS 下超详细搭建 Appiumm 自动化测试环境

Appium mac OS 环境搭建 Appium 一年之前相比,有了很大的改变 1、iOS 9 之前一直以 instruments 下的 UIAutomation 驱动底层技术(弊端由于 instruments...ios-deploy:查看设备应用 carthage:类似于 java 的 maven,项目依赖管理,主要是 WebDriverAgent 使用 9、配置WebDriverAgent (1)首先进入WebDriverAgent...按照图中,1:选择schemeWebDriverAgentRunner -> 2:选择运行设备,模拟器和真机都可以 -> 3:选择要构建的方式 ->4:选择Test方式的步骤验证是否能成功运行,WebDriverAgentRunner...3)长时间测试,server中断,这个无法解决,appium自身问题。 4)webdriveragent启动失败,status、inspector无法正常查看,查看版本。...5)appium脚本启动失败,查看脚本中的配置。

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

Appium超详细环境搭建for-Mac

UIAutomation、Facebook 推出 WebDriverAgent(实现的 server 能够支持单台 mac 对应多个设备);4、Appium iOS 9.3 后全面采用 WebDriverAgent...  ios-deploy:查看设备应用  carthage:类似于 java 的 maven,项目依赖管理,主要是 WebDriverAgent 使用   9、配置WebDriverAgent   (...(5)更改bundle id:这里的bundle id就相当于一个App的唯一识别号,更改的规则随意,只要确认不会与有重复即可;所有的targets都需要修改 ? ?   ...按照图中   1:选择schemeWebDriverAgentRunner -> 2:选择运行设备,模拟器和真机都可以 -> 3:选择要构建的方式 ->4:选择Test方式   的步骤验证是否能成功运行...启动失败,status、inspector无法正常查看,查看版本   5、appium脚本启动失败,查看脚本中的配置 星云测试 http://www.teststars.cc 奇林软件 http://www.kylinpet.com

1.7K42

xcodebuild:从命令行部署 iOS 应用程序

或者您能想到从没有 GUI 访问权限的服务器部署应用程序吗?或者如果你没有 Ruby 的 脚本技能怎么办?使用Fastlane? 我们必须知道构建,测试,存档和上传应用程序时幕后发生的事情。...Analysing 分析 构建和测试 iOS 应用程序之前要做的一件明智的事情是对源代码执行静态分析。该 xcodebuild 有清理和分析的源代码,任何常见的语法错误的能力。...clean analyze Build 构建 我们可以使用 xcodebuild'build'动作构建一个 iOS 应用程序,我们的 iOS 应用程序生成派生数据。...运行而构建 我们可以使用简单的命令简单地构建我们的应用程序以模拟器内运行 $ xcodebuild -scheme CLI -workspace CLI.xcworkspace/ build 这将在...为了将应用程序上传到 iTunes Connect 或将其部署到配置的设备,我们需要为 通用 iOS 设备目标 构建和应用,并以 IPA 格式导出。

2.3K20

手把手教你利用Jenkins持续集成iOS项目

前言 众所周知,现在App的竞争已经到了用户体验王,质量的白热化阶段。用户们都是很挑剔的。...以天单位的持续集成,可以很快发现编译问题,自动打包直接无法通过。打完包以后,测试扫码无法安装,这种问题也会立即被暴露出来。接口问题和性能问题就有自动化测试脚本来发现。...我们经常会出现由于本地配置出错而导致打包失败的情况。现在Jenkins就是一个公平的评判者,它无法正确的编译出ipa,那就是有编译错误或者配置问题。...本地生成大批的测试用例。每天利用服务器不断的跑这些用例。每天每个接口都跑一遍。 看上去没必要,但是实际今天运行正常的系统,很可能由于今天的代码改动,明天就出现问题了。...deliver:上传屏幕截图、二进制程序数据和应用程序到AppStore snapshot:自动截取你的程序每个设备的图片 frameit:应用截屏外添加设备框架 pem:可以自动化地生成和更新应用推送通知描述文件

1.9K30

手把手教你利用Jenkins持续集成iOS项目

前言 众所周知,现在App的竞争已经到了用户体验王,质量的白热化阶段。用户们都是很挑剔的。...以天单位的持续集成,可以很快发现编译问题,自动打包直接无法通过。打完包以后,测试扫码无法安装,这种问题也会立即被暴露出来。接口问题和性能问题就有自动化测试脚本来发现。...我们经常会出现由于本地配置出错而导致打包失败的情况。现在Jenkins就是一个公平的评判者,它无法正确的编译出ipa,那就是有编译错误或者配置问题。...本地生成大批的测试用例。每天利用服务器不断的跑这些用例。每天每个接口都跑一遍。看上去没必要,但是实际今天运行正常的系统,很可能由于今天的代码改动,明天就出现问题了。...deliver:上传屏幕截图、二进制程序数据和应用程序到AppStore snapshot:自动截取你的程序每个设备的图片 frameit:应用截屏外添加设备框架 pem:可以自动化地生成和更新应用推送通知描述文件

1.5K31

jenkins 之 iOS 打包及上传至蒲公英

准备条件 iMAC(要 Mac OS 系统,安卓 和 苹果 可以同一台电脑打包) xcode 最新版,要已安装对应的开发证书(生成一个 Ad-Hoc 类型的包就有了) brew(当前管理员账户安装)...源码管理,使用 账号 和 密码拉取代码(有可能会提示无法获取,你可以重启 jenkins 试试,如果还不行,重启电脑,如果还不行,自行解决) 3....) is_workspace="true" # 指定项目的scheme名称 # (注意: 因为shell定义变量时,=号两边不能留空格,若scheme_name与info_plist_name有空格,脚本运行会失败...AdHocExportOptionsPlist.plist(文件名要与 .sh 脚本里设置的名称一致,如果有新设备注册就要重新替换一次) 修改项目名称: # 指定项目的scheme名称 # (注意:...因为shell定义变量时,=号两边不能留空格,若scheme_name与info_plist_name有空格,脚本运行会失败,暂时还没有解决方法,知道的还请指教!)

2.2K20

iOS应用构建与部署小结

self.view addSubview :label]; } @end 这样,一个Hello World小程序就完成了,左上角运行按钮,即可编译并在模拟器中运行,如下: imgSim.jpg 代码框下方...命令行编译 为了更好地了解编译过程,我们可以脱离Xcode IDE,命令行编译该项目: 首先,项目目录中查看Schemes: $ xcodebuild -list -project HelloWorld.xcodeproj...xcrun simctl list devices # 打开并启动设备 open -a Simulator --args -CurrentDeviceUDID $UDID # 启动的设备中安装我们的应用...Xcode7以后,开发者可以只用自己的Apple ID来自己的设备运行iOS应用,设置如下: imgSign.jpg 这样就可以通过USB物理机上运行iOS应用了,不过要注意的是第一次启动时会提示不可信的开发者...其他 除了上述方式,还有一些开源脚本可以帮助我们安装部署自己的应用,如ios-deploy, 只要连接USB输入以下命令即可安装: $ ios-deploy -b HelloWorld.ipa [...

1.9K40

ATX自动化测试框架-iOS

可以测试第三方应用,比如微信,网易新闻之类 3. 更新方便,可以使用pip直接更新应用 4. 集成图像识别,可以解决仅靠UI无法定位识别的问题 5. 集成测试报告 6....我们就可以通过ServerURLHere->后面的连接去监听设备了,WDA里面有一个js脚本,建立一个inspector的页面,供我们方便查看元素: ?...测试脚本 bundle_id 首先要知道应用的bundle_id, 有两种方法: 连接手机,终端使用命令 ideviceinstaller -l 查看当前手机所有已安装的应用: ?...这是我之前写的一个demo: 打开应用 点击登录 输入帐号 输入密码 点击登录 点击个人 进入设置 退出登录 ?...3行代码之后加入以下代码 123 from atx.ext.report import Reportrp = Report(d)rp.patch_wda() 再次运行一遍代码,在当前脚本所在目录下就可以看到一个

3.2K40

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

设置 YES,将框架配置单个构建操作中多个平台构建; 可以构建阶段使用平台过滤器,并为所有支持的平台定位依赖项; 当发生构建失败时,xcodebuild 现在会在构建日志末尾的摘要中显示每个失败命令的目标和项目名称...; 现在可以使用键盘选择和导航大纲视图组,例如 Constraints; Interface Builder 有一个重新设计的画布底部栏,带有用于更改设备和布局的弹出窗口,以及用于更改设备外观和方向的开关...); Xcode 分发助手中的自动签名现在支持云签名; Xcode 13 支持 Mac TestFlight 配置应用程序; 现在可以命令行使用 notarytool 与 Apple 公证服务进行交互...Xcode 13 中的 Swift 语法高亮显示是即时且无闪烁的,无论是文件之间进行编辑还是导航; 即使您的代码不完整或您的项目无法编译,Swift Jump to Definition 现在也能提供更具弹性的体验...iOS 设备的 UI 测试中合成指针交互; Xcode 现在为在运行测试时崩溃的进程收集代码覆盖率数据; 性能 XCTests 现在支持测量应用程序启动时的 CPU 使用率 (XCTCPUMetric

8.7K40

Appium中iOS环境搭建指南

三种账号各有所长,如何选择还需要看实际的应用情况。 由其可见苹果对证书要求非常严格,必须在证书设备列表中的设备才能安装打包后的app。...因为打包的时候不会做app签名验证 2、打包被测app给真机安装 3、WebDriverAgent安装使用 安装ideviceinstaller ideviceinstaller是一个命令行工具,主要用于管理iOS设备应用程序的安装与卸载...,以及查看相关信息,appium中会使用到。...failure: xcodebuild failed with code 70 解决方案:升级系统,真机系统过高,Xcode无法适配 3、Unable to launch WebDriverAgent...because of xcodebuild failure: xcodebuild failed with code 65 解决方案:这一般意味着必要的签名未设置正确,通过手工配置WDA签名 4、WebDriverAgenti

1.5K40

我们如何应对Python桌面应用程序的崩溃

这意味着Dropbox收集到的信息几乎是无用的,除非它可以“映射”回源代码,这个过程就被称为“符号化”。 为此我们内部服务器的每个Dropbox构建保留符号。...这是我们构建过程的核心部分,若符号生成失败则被认为是构建失败,我们不会使用这种无法被符号化的发布版本。...因此,我们希望有一种方法能来记录和判断出哪种情况算是应用正常退出,哪种情况算是应用意外崩溃。 这也我们提供一个基线,用来验证我们的新崩溃报告构架是否捕获了大部分应用崩溃情况。...我们让应用程序启动时发送事件来生成启动事件,通过比较启动和退出事件,可以测量退出监控的准确性。我们可以确保退出监控对绝大部分用户是成功的 (请注意防火墙等其他程序会阻止它一直运行)。...CPython中,解释器线程始终由本机线程支持。因此, Dropbox应用程序中, Python创建的每个本机线程都有一个关联的 PyThreadState 结构。

1.4K10

iOS真机安装WebDriverAgent图文详解

、Appium修改版也可以是Facebook原版,今天我们以Appium修改版例来进行说明,其他版本同样适用。...运行测试 按照下图中提示,分别选择WebDriverAgentRunner和目标设备: 然后点击Product菜单下的Test,这时候会提示输入本机电脑的密码,输入完成后点击始终允许即可。...如果是个人免费版证书还会弹出下面的提示: 这是因为WDA应用没有被信任,需要进入手机设置-> 通用-> 描述文件与设备管理,点击开发者APP信任一下就可以了。...,可以通过下面的命令实现利用xcodebuild自动启动WebDriverAgent。.../Keychains/login.keychain # 获取设备的UDID UDID=$(idevice_id -l | head -n1) # 运行测试 xcodebuild -project WebDriverAgent.xcodeproj

6.9K40

教你实现一个 iOS 重签名工具

目前团队的测试流程是对游戏包重签名后,再安装到测试设备上进行测试,日常的重签打包工作下,发现部分游戏包在重签名后存在一些问题(安装不,某些权限功能不能用等),而用 Xcode 进行 Archive...CSR 文件给到苹果服务器 苹果有自己的公私钥 K,其中公钥 K 存在每一台的 iPhone 设备,私钥 K 则保存在苹果服务器。...根据 CSR 内容利用私钥 K 进行签名并生成证书,同时也根据开发者后台填写的信息(Bundle ID,权限等)和证书生成描述文件(mobileprovision) 开发者设备打包时,会把描述文件一并打包到...ipa 中,并利用私钥 M 对包的内容进行签名 安装到设备时,会进行两次验证:利用设备的公钥 K 校验 ipa 包内的证书文件(证书是通过苹果私钥 K 签名),校验证书是否有效 一步证书校验通过后...icon 等资源文件 2. codesign 命令重签名 这一步与其他的重签脚本有点不一样,以 iOS App Signer 的逻辑例,需要先将 mobileprovision 复制到包内改名为 embedded.mobileprovision

4.3K10

IOS自动化—将WDA打包ipa批量安装驱动

我可以一直偷偷写成私人笔记存本地而不发表 ~ 前言 微信: ios自动化 - Xcode、WebDriverAgent环境部署 CSDN: ios自动化-Xcode、WebDriverAgent环境部署 ios获取原生系统应用的包...必要条件 Mac电脑,OS版本12.4及以上(低于这个版本无法安装Xcode14,装不了Xcode14就打包不了IOS16的驱动) IOS设备手机,IOS版本11.0及以上 Xcode14.0及以上...公司的IOS开发者账号(如果是个人账号,只能用七天就要重新打包,这就失去了打包的意义了) 为何做这个 之前写的IOS自动化教程中,我都是采用的Mac电脑连接ios设备,使用Xcode一个个进行打包,...二、进行打包WDA.ipa 「检查当前是否满足前面的必要条件,没满足请先满足,否则后面无法进行或有各种各样的报错!」...安装ipa文件可以通过iTools,也可以通过其他第三方进行安装,比如我比较推荐的是tidevice,它可以使用python编写批量安装,批量启动的脚本,这些我均已在公司落地。

1.2K30

如何通过静态分析提高iOS代码质量

对于Facebook内部的应用像是 Messenger、Instagram 和其他一些应用均是有它进行静态分析的。...我分别用Xcode11两个项目运行过OCLint,一个实例项目可以正常运行,另一个复杂的项目却运行失败,报如下错误: 1 error generated 1 error generated .....brew的最新版本是0.13,github的最新版本是0.15。我下载github的release0.15版本,但是这个包并不是编译过的,不清楚是不是官方自己搞错了,只能手动编译了。...它的安装方式: $ gem install xcpretty OCLint的使用 使用OCLint之前还需要一些准备工作,需要将编译项COMPILER\_INDEX\_STORE\_ENABLE设置...**封装脚本** OCLint跟Infer一样都是通过运行几个脚本语言进行执行的,我们可以将这几个命令封装成一个脚本文件,以OCLint例,Infer也类似: #!

2.1K30

Mac 环境Appium自动化测试环境搭建

前言 一篇分享了 Windows环境Appium自动化测试环境搭建 但是由于Win环境不支持iOS设备测试,因此这里再分享Appium+Mac环境搭建,值得一提的是:Mac环境既可以进行Android...系统环境 设备类型 系统版本 Mac-mini Mac OS 10.14.6 iPhone6 iOS 12.4.3 环境搭建 Xcode Xcode 是运行在操作系统Mac OS X的集成开发工具(...这使其成为应用端到端测试或通用设备自动化的完美工具。它的工作原理是链接XCTest.framework和调用Apple的API直接在设备执行命令。...WebDriverAgentFacebook开发并用于端到端测试,并被Appium成功采用。...解决方案:进入 设置->通用->设备管理->开发者应,然后点击信任,之后再重新运行一遍 Product -> Test 运行调试 可以使用如下代码进行启动iOS app调试。

2.3K30

iOS 自动化测试踩坑(一): 技术方案、环境配置与落地实践

插入真机,Xcode 上选择真机,Singing 中添加 AppleID 作为 account,生成一个本地的 Provisioning Profile 和设备的证书 踩坑:你可能会遇到如下的错误信息...UICatalog 已经被成功安装,尝试打开: 踩坑: 苹果对未在 AppStore 中上架的 App 做了限制,默认不受信任,所以我们需要手动将其设置信任: 设置-通用-描述文件与设备管理...Scripts 下有一个 bootstrap.sh 脚本,执行它即可。...Google 一位外国友人轻描淡写的一句话解决了我的问题(感谢外国友人~) 没错,我们报错出双击,进入到报错代码处,将 assign 改为 strong 后再次 build : Build succeeded.../js/app.js 报错 2)执行时候报 xcodebuild failed with code 65 错误 花了很大的功夫和篇幅,记录 iOS 自动化的准备工作,踩了很多坑,坑不能白踩

1.3K10

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

Jenkins 以 Job 单位运行项目,一个 Job 的工作流程指定的时机,选择合适的 salve 节点,从版本管理系统获取对应的源码,使用命令行脚本或者 maven 或者 ant 进行构建...KIF 自动化测试 Jenkins 持续集成过程中遇到的问题 (1) 设备重置 我们的测试用例覆盖了第一次安装启动的操作。初期,这个用例经常失败。...经过排查发现,持续集成系统中的模拟器设备重置操作并没有覆盖所有的设备,UI 测试 Job 运行时,Job 选择的模拟器设备可能遗留了其他 Job 构建的相同的 app 产物,导致我们的 Job 构建产物并不是第一次安装启动...所以脚本中我们遍历所有模拟器设备,将其进行重置。 (2) 键盘敲击延迟 我们的测试用例输入框输入文字时,经常出现输入不全而导致失败的问题。...但是我们的应用程序启动时系统弹窗并不止一个,并且不同设备,因系统设置不同,系统弹窗的个数是不确定的。所以,直接使用 acknowledgeSystemAlert 并不能帮我们解决问题。

2.3K60
领券