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

如何在虚拟机(Virtual Machine)托管的Jenkins服务器中构建项目时,在Real Android设备或Emulator中运行Appium测试

在虚拟机托管的Jenkins服务器中构建项目并在Real Android设备或Emulator中运行Appium测试,可以按照以下步骤进行:

  1. 确保你已经在虚拟机中安装了Jenkins服务器,并且已经配置好了Android开发环境和Appium测试环境。
  2. 在Jenkins中创建一个新的构建任务,选择自由风格的软件项目。
  3. 在构建任务的配置页面中,配置源代码管理,选择你的代码仓库,并设置分支或标签。
  4. 在构建环境中,选择"执行shell"或"执行Windows批处理命令",根据你的操作系统选择合适的选项。
  5. 在执行的shell或批处理命令中,首先确保Android设备或Emulator已经连接到虚拟机,并且已经正确配置了ADB(Android Debug Bridge)。
  6. 使用Appium的命令行工具或Appium的Java API,编写一个启动Appium服务并运行测试的脚本。例如,可以使用以下命令启动Appium服务:
代码语言:txt
复制

appium &

代码语言:txt
复制

然后,使用以下命令运行Appium测试:

代码语言:txt
复制

mvn test

代码语言:txt
复制

或者,如果你使用的是Gradle构建工具,可以使用以下命令运行Appium测试:

代码语言:txt
复制

gradle test

代码语言:txt
复制
  1. 确保你已经在构建任务的构建步骤中正确设置了Appium测试的命令。
  2. 保存并应用构建任务的配置。
  3. 手动触发构建任务,Jenkins将会在虚拟机中构建项目,并在Real Android设备或Emulator中运行Appium测试。

虚拟机托管的Jenkins服务器中构建项目时,在Real Android设备或Emulator中运行Appium测试的优势是可以实现自动化的持续集成和测试,提高开发效率和软件质量。

这里推荐腾讯云的移动测试服务(https://cloud.tencent.com/product/mts)作为一个相关产品,它提供了全面的移动测试解决方案,包括Appium测试、真机测试、模拟器测试等,可以帮助开发者在云上快速搭建移动测试环境,并进行自动化测试。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

自动化-Appium-环境搭建-Android(Java版)

通过SDK提供的一些工具将其打包成Android平台使用的apk文件,然后用SDK中的模拟器(Emulator)来模拟和测试软件在Android平台上运行情况和效果。...在安装API时根据要测试的模拟器或真机的Android版本而定,例如:使用的真机是Android 6.0版本,则Android SDK要下载Android 6.0的API才可以。...在安装API时根据要测试的模拟器或真机的Android版本而定,例如:使用的真机是Android 6.0版本,则Android SDK要下载Android 6.0的API才可以。...Genymotion-ARM-Translation虚拟机支持文件,能够完美仿真ARM APP,在安卓上能够模拟使用,正常运行APP程序,运行速度明显快于SDK自带的模拟器,需要注意的是,虚拟机的安卓版本必须是...Genymotion-ARM-Translation虚拟机支持文件,能够完美仿真ARM APP,在安卓上能够模拟使用,正常运行APP程序,运行速度明显快于SDK自带的模拟器,需要注意的是,虚拟机的安卓版本必须是

5.1K30

自动化-Appium-环境搭建-Android(Python版)

通过SDK提供的一些工具将其打包成Android平台使用的apk文件,然后用SDK中的模拟器(Emulator)来模拟和测试软件在Android平台上运行情况和效果。...在安装API时根据要测试的模拟器或真机的Android版本而定,例如:使用的真机是Android 6.0版本,则Android SDK要下载Android 6.0的API才可以。...在安装API时根据要测试的模拟器或真机的Android版本而定,例如:使用的真机是Android 6.0版本,则Android SDK要下载Android 6.0的API才可以。...Genymotion-ARM-Translation虚拟机支持文件,能够完美仿真ARM APP,在安卓上能够模拟使用,正常运行APP程序,运行速度明显快于SDK自带的模拟器,需要注意的是,虚拟机的安卓版本必须是...Genymotion-ARM-Translation虚拟机支持文件,能够完美仿真ARM APP,在安卓上能够模拟使用,正常运行APP程序,运行速度明显快于SDK自带的模拟器,需要注意的是,虚拟机的安卓版本必须是

3.8K30
  • 如何搭建基于C#和 Appium 的 Android自动测试环境

    关于Appium环境搭建的例子网上比较多,不过都是关于Python,Java的,使用C#客户端的资料比较少,公司现有的测试系统是基于C#构建的,因为要和现有系统集成,所以选择的C#语言作为客户端, 下载...默认大家是安装了Visual Studio 的,如果没有安装,请百度如何安装Visual Studio    搭建环境有三部分,模拟器环境准备,Appium服务器环境准备,C#单元测试工程环境准备,关于前两部分腾讯课堂...将 E:\android-sdk 替换成自己机器的地址。 ? 在Path 中追加:%ANDROID_HOME%\platform-tools; %ANDROID_HOME%\tools ?...在 NuGet 中查找 Appium (Tools ->NuGet Package Manager -> Manage NuGet Package for Solution…)    找到 Appium.WebDriver...完成后使用下面代码替换自动生成的单元测试代码。运行单元测试,就可以看到如下模拟器中的计算器被打开,并点击了数字5。如下图: ?

    2.6K20

    使用TestProject Python SDK创建移动Appium测试

    使用模拟器在Android上运行移动网络测试 我将假设您已经下载了Python SDK,已经配置了代理和开发人员令牌,并且代理正在运行。如果没有,您可以在这篇文章中阅读如何做。...运行此测试时,它将在您的Android模拟器上启动Chrome浏览器并运行该测试: 测试完成执行后,SDK将报告发送到代理,代理将依次在TestProject平台上创建新的测试报告: 使用真实设备在...通过TestProject,您可以在iOS设备上运行测试,而无需运行macOS或XCode,也无需自己运行Appium服务器。...正如我们在发送到TestProject的报告中看到的那样,该测试也通过了: 如您所见,使用TestProject Python SDK(或 Java或C# SDK),您可以轻松地将现有基于Appium...的测试转换为TestProject驱动的测试,无论它们是用于Android还是iOS,都可以使用仿真器或真实设备,在macOS,Linux和Windows上测试移动Web或本机应用程序。

    1.6K20

    使用TestProject Python SDK创建移动Appium测试

    使用模拟器在Android上运行移动网络测试 我将假设您已经下载了Python SDK,已经配置了代理和开发人员令牌,并且代理正在运行。如果没有,您可以在这篇文章中阅读如何做。...运行此测试时,它将在您的Android模拟器上启动Chrome浏览器并运行该测试: 测试完成执行后,SDK将报告发送到代理,代理将依次在TestProject平台上创建新的测试报告: 使用真实设备在...通过TestProject,您可以在iOS设备上运行测试,而无需运行macOS或XCode,也无需自己运行Appium服务器。...正如我们在发送到TestProject的报告中看到的那样,该测试也通过了: 如您所见,使用TestProject Python SDK(或 Java或C# SDK),您可以轻松地将现有基于Appium...的测试转换为TestProject驱动的测试,无论它们是用于Android还是iOS,都可以使用仿真器或真实设备,在macOS,Linux和Windows上测试移动Web或本机应用程序。

    28720

    pCloudy的方式–连续测试平台可实现高速,高质量的移动应用程序测试

    在pCloudy中,由于具有多种优势,Appium主要用于自动化测试。Appium支持Android以及IOS设备的自动化测试。它是一个开放源代码框架,支持对本机,混合和移动Web应用程序的测试。...在pCloudy中进行手动测试 ? pCloudy允许在Android和IOS Real Mobile设备上进行有效的手动测试。它还有利于同时在多个设备上进行并行测试。...连接设备进行测试后,该设备将显示在中间,左侧,右侧和顶部窗格中将显示某些功能。 对于手动测试,导航非常简单容易 这是关于如何在pCloudy中执行手动和自动化测试的简要概述。...Wildnet: 所述Wildnet特征使用户能够测试内部或上的任何IOS和Android设备存在于pCloudy专用服务器。对于服务器来说,这是至关重要的功能,因为服务器安全性是他们的高度关注。...使用wildnet,无需在pCloudy中测试移动应用程序时使用登台服务器。 对象间谍: 此功能可帮助测试人员直接从pCloudy设备提取对象名称并运行检查器会话,而不是从Appium桌面提取。

    1.8K30

    两分钟带你快速搭建Flutter开发环境(Windows)

    一般的错误会是Android Studio版本太低、或者没有ANDROID_HOME环境变量等 第一次运行一个flutter命令(如flutter doctor)时,它会下载它自己的依赖项并自行编译。...>AVD Manager 并选择 Create Virtual Device; 选择一个设备并选择 Next; 为要模拟的Android版本选择一个或多个系统映像,然后选择 Next....大家在安装过程中遇到问题无法解决的,可以在我们课程的问答区提问进行提问; 在 Android Virtual Device Manager中, 点击工具栏的 Run,模拟器启动并显示所选操作系统版本或设备的启动画面...; 通过flutter run运行启动项目; 如何在Android真机运行?...要准备在Android设备上运行并测试您的Flutter应用,您需要安装Android 4.1(API level 16)或更高版本的Android设备 在你的设备上启用 开发人员选项 和 USB调试

    8.1K10

    App自动化测试方案

    (4)测试结果,测试用例中记录了运行后的测试结果,如pass、failed、skip中的一种测试结果,详细见第4章关联的Excel测试用例。...Ant的构建文件 当开始一个新的项目时,首先应该编写Ant构建文件。构建文件定义了构建过程,并被团队开发中每个人使用。Ant构建文件默认名为build.xml,也可以取其他的名字。...只不过在运行的时候,需要把这个名字当作参数传给Ant。构建文件可以放在任何的位置。一般做法是放在项目的顶层目录中,这样可以保持项目的简洁和清晰。...每个目标中可以定义多个任务,目标中还定义了所要执行的任务序列。Ant在构建目标时必须调用所定义的任务。任务定义了Ant实际执行的命令。Ant中的任务可以分为三类: (1)核心任务。...Subversion可以通过网络访问它的版本库,从而使用户可以在不同的电脑上进行操作。 我们把测试开发的源代码存放在SVN上,然后结合Jenkins进行持续集成构建时使用。

    3.7K10

    自动化-Appium-常用命令

    常用命令 自动化测试过程中通常会使用一些操作命令,如针对Android需要查看App的appPackage和appActivity;针对IOS需要查看App的bundleID等。...1.3操作指定的模拟器/真机 输入命令 adb -s 如果有多个模拟器或真机正在运行,当使用adb命令的时候就需要指定目标设备,这可以通过使用-s选项参数实现。 例如:指定一台机器安装应用程序。...例如:在Android SDK中创建2台Android Virtual Devices模拟器,执行命令会查询到这2台模拟器信息。...1.5启动AVD模拟器 输入命令 emulator -avd 例如:有2台Android Virtual Devices模拟器,只启动Test1这台,命令如下 emulator -avd Test1...从模拟器或真机中复制一个文件或文件夹到电脑上: 输入命令 adb pull 从电脑上复制一个文件或文件夹到模拟器或真机中: 输入命令 adb push 在命令中和引用的是文件或文件夹的路径,在电脑上的是

    1.8K51

    自动化-Appium-第一个Demo-原生(Java版)

    要想在IOS模拟器中运行应用,则必须在Xcode中编译时选择模拟器类型,编译生成的文件后缀为.app (2)如果是在真机上运行,需要装.ipa的应用程序文件。分为正式版和开发版。...// 被测应用的bundle ID // 用于在真实设备中启动测试,也用于使用其他需要bundle ID的关键字启动测试 // 在使用bundle ID在真实设备上执行测试时,你可以不提供`app`关键字...// 被测应用的bundle ID // 用于在真实设备中启动测试,也用于使用其他需要bundle ID的关键字启动测试 // 在使用bundle...要想在IOS模拟器中运行应用,则必须在Xcode中编译时选择模拟器类型,编译生成的文件后缀为.app (2)如果是在真机上运行,需要装.ipa的应用程序文件。分为正式版和开发版。...// 被测应用的bundle ID // 用于在真实设备中启动测试,也用于使用其他需要bundle ID的关键字启动测试 // 在使用bundle ID在真实设备上执行测试时,你可以不提供`app`关键字

    2.2K30

    自动化-Appium-第一个Demo-原生(Python版)

    要想在IOS模拟器中运行应用,则必须在Xcode中编译时选择模拟器类型,编译生成的文件后缀为.app (2)如果是在真机上运行,需要装.ipa的应用程序文件。分为正式版和开发版。...# 被测应用的bundle ID # 用于在真实设备中启动测试,也用于使用其他需要bundle ID的关键字启动测试 # 在使用bundle ID在真实设备上执行测试时,你可以不提供`app`关键字,但你必须提供...# 被测应用的bundle ID # 用于在真实设备中启动测试,也用于使用其他需要bundle ID的关键字启动测试 # 在使用bundle ID在真实设备上执行测试时,你可以不提供`app`关键字...要想在IOS模拟器中运行应用,则必须在Xcode中编译时选择模拟器类型,编译生成的文件后缀为.app (2)如果是在真机上运行,需要装.ipa的应用程序文件。分为正式版和开发版。...# 被测应用的bundle ID # 用于在真实设备中启动测试,也用于使用其他需要bundle ID的关键字启动测试 # 在使用bundle ID在真实设备上执行测试时,你可以不提供`app`关键字,但你必须提供

    2.2K20

    Appium面试题

    11、在Appium的上下文中解释Appium Session? 12、测试人员在使用Appium时可以在多线程环境中运行测试吗?...Appium 为各种平台(如 Android 和 iOS)创建和管理许多 webdriver 会话。 测试⼈员⽣成的测试脚本作为请求发送到 Appium 服务器,然后在模拟器或设备上执⾏。...每个供应商都有⾃⼰的技术和⽅法来在设备上执⾏测试⽤例,例如 IOS 或 Android。因此,测试⽤例在 Appium 服务器接收到命令后运⾏。...12、测试人员在使用Appium时可以在多线程环境中运行测试吗? 是的,Appium 允许测试⼈员在多线程环境中执⾏测试。他们唯⼀需要担⼼的是不能同时针对同⼀个 Appium 服务器运⾏⼀个测试。...当我们在 PC 上安装 Appium 时,它还会安装⼀个公开 REST API 的服务器。它接受来⾃客户端的命令和连接请求,并在 iOS 或 Android 设备上执⾏它们。

    4.5K10

    新一代稳定性测试利器Fastbot

    项目迭代中,一般会对每个版本的App进行稳定性测试,在正式发布前拦截Crash。而稳定性测试方案中对于测试工具的选型方案是决定了发现Crash问题的可能性。...本文会从稳定性测试工具切入,介绍新一代稳定性测试利器Fastbot如何在项目中使用。...是基于 Appium 开发具备了跨平台的优点,但是也因为这层封装造成了运行速度相对较慢,再加上运行过程中加入了截图(可以在配置中取消,但是取消后不利于结果的查看),运行起来自然就慢了; 使用门槛高:正因为使用灵活性的问题...自动化脚本 在实际工作中,一般会把稳定性测试搞成自动化执行。我们可以把Fastbot提供的能力封装成shell脚本,方便在持续集成中运行。...配置一个jenkins任务,把自动化脚本放到github上并且每次执行都从github拉取最新的代码,在构建触发器配置定时器"每天晚上23点"执行。

    3.6K31

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

    前言 上一篇分享了 Windows环境Appium自动化测试环境搭建 但是由于Win环境不支持iOS设备测试,因此这里再分享Appium+Mac环境搭建,值得一提的是:在Mac环境既可以进行Android...服务器实现,可用于远程控制iOS设备允许启动和终止应用程序,点击和滚动视图或确认屏幕上的视图存在。...这使其成为应用端到端测试或通用设备自动化的完美工具。它的工作原理是链接XCTest.framework和调用Apple的API直接在设备上执行命令。...3.如果是免费版的个人证书,还需要修改下WebDriverAgent的BundleID,随便加点后缀,只要不跟其他人的重名就好。 ? 运行测试 1.菜单栏选择目标设备 ?...WDA,但是每次只能连接一台设备,而且该软件运行占用内存比较大,所以我们需要使用命令终端来运行WDA,这样方便我们进行自动化或持续集成。

    2.5K30

    【Appium 自动化测试】搭建 Appium 环境踩坑记录

    Python 在自动化测试方面也是非常好用的语言,平时我的工作中也会使用 Python 进行自动化测试的工作,包括接口测试,直接使用 requests 库调用接口就行,跟写爬虫一样;还有云服务的 UI...测试,也就是页面的测试,可以使用 selenium 进行,我经常使用 selenium 写爬虫,所以使用起来也是非常顺手;而进行手机 app 的测试,也有相关工具,现在最流行的就是 appium 了,结合...今天这篇文章主要记录一下我在搭建 appium 自动化测试环境中踩过的坑。...首先添加一个新的环境变量 ANDROID_HOME,值就是自己的 Android-SDK 目录,如下 然后在环境变量 Path 中添加两个目录路径,如下 图片 添加完环境变量之后,可以来验证 Android-SDK...获取 appPackage 和 appActivity 的方法: 首先在虚拟机中运行对应的软件 执行 adb 命令查询当前运行软件的信息 下面这个是获取抖音APP 的信息: PS C:\Users\HP

    1K10

    Android 稳定性测试实践

    开发具备了跨平台的优点,但是也因为这层封装造成了运行速度相对较慢,再加上运行过程中加入了截图 (可以在配置中取消,但是取消后不利于结果的查看),运行起来自然就慢了; 使用门槛高:正因为使用灵活性的问题...,模型文件会自动存储在 /sdcard/fastbot_[包名].fbm,启动 fastbot 时如果此文件存在则默认加载模型,运行过程中每隔十分钟会覆盖存储一次,用户可根据需求删除或拷贝此文件 综合对比上面的技术框架优缺点...服务层主要提供提供给工具层服务能力,如: 安装包数据、创建 Bug 服务、保存报告服务等。 发版流程 伴随客户端发版节奏,从需求上车后到构建完成集成包,自动化触发稳定性测试任务。...Jenkins Agent 本身只是一个编译、打包、运行代码的环境,并不包含 Jenkins 实例。在每一个Jenkins Agent 上可以挂在多台Android设备。...在Jenkins中创建稳定性测试任务,编写构建脚本和执行测试策略。

    1.3K21

    自动化-Appium-​第一个Demo-Web(Python版)

    开始测试运行在任何模拟运行,或设备插入 desired_caps['noReset'] = True # 执行完整的重置 # Android 停止应用程序,清除应用程序数据并在测试后卸载apk # IOS...在真机设备测试后卸载应用程序,在模拟器测试后摧毁模拟器 desired_caps['fullReset'] = False # 设置命令超时时间,单位:秒 # 达到超时时间仍未接收到新的命令时Appium..."" # 定义启动设备需要的参数 desired_caps = {} # 使用哪个自动化测试引擎 # 默认为Appium,或Selendroid或UiAutomator2或Espresso用于Android...开始测试运行在任何模拟运行,或设备插入 desired_caps['noReset'] = True # 执行完整的重置 # Android 停止应用程序,清除应用程序数据并在测试后卸载apk # IOS...在真机设备测试后卸载应用程序,在模拟器测试后摧毁模拟器 desired_caps['fullReset'] = False # 设置命令超时时间,单位:秒 # 达到超时时间仍未接收到新的命令时Appium

    2.5K10

    Python + Appium 自动化操作微信入门看这一篇就够了

    简介 Appium 是一个开源的自动化测试工具,支持 Android、iOS 平台上的原生应用,支持 Java、Python、PHP 等多种语言。...执行了上面连接模拟器的命令后,我们可以在 cmd 控制台输入 adb devices 查看当前连接的虚拟机。...使用 首先启动 Appium 和 mumu,因为之前我们已经配置了 Appium,此时我们直接点击 Appium 的启动服务器按钮即可,如下图所示: ? 启动之后如图所示: ?...= { "platformName": "Android", # 操作系统 "deviceName": "emulator-5554", # 设备 ID...我们在图中所需功能下方将代码中的 desired_caps 信息配置进去,配置好后点击启动会话按钮,启动之后我们会发现 Appium 中与 mumu 中的微信效果不一致,如下图所示: ?

    4.6K20

    DevOps -测试内持续集成与持续交付

    持续集成CI 持续集成工作原理 采用持续集成时,开发(测试)人员可以使用诸如 Git 之类的版本控制系统,将更新频繁的代码(或测试脚本)提交到共享存储库(服务器或Gerrit)中。...在每次提交前,开发(测试)人员可以选择在集成前对其代码执行本地脚本测试,作为额外的验证层。持续集成服务在新代码更改上自动构建和运行单元测试,以立即发现任何错误。...如 Git,CVS,SVN ,Gerrit等; 自动化的构建和软件发布流程的工具,如 Jenkins、Drone.io、flow.ci; 反馈机制。...是搭建私有部署还是选择托管型持续集成系统,关键在于团队运行的基础设施,团队对持续集成系统的资源投入力度。另外,在选择合适的持续集成服务时,还需要考量系统的灵活度以适应公司不同阶段的开发测试需求。...基于项目实际,我们在自动化测试实践过程中,选择了一款验收测试自动化测试框架Appium,结合python+unittest来作为我们的核心框架。

    1.8K10
    领券