首页 > 科技周边 > IT业界 > 自动化连续集成和部署以进行编码

自动化连续集成和部署以进行编码

尊渡假赌尊渡假赌尊渡假赌
发布: 2025-02-16 10:02:13
原创
892 人浏览过

Automate continuous integration and deployment to get on with coding

关键要点

  • 自动化持续集成/持续交付 (CI/CD) 流程,让开发人员更专注于编写代码,减少管理相关开销。
  • Visual Studio App Center 的构建、测试和分发服务,自动化开发流程的构建、测试和分发阶段,节省开发人员的时间和精力。
  • 自动化 UI 测试在数千台真实设备的数百种配置上运行,提供详细的日志和性能数据,以便快速识别和修复问题。
  • Visual Studio App Center 模块化设计,允许开发人员根据需要采用部分功能,并提供与现有系统的集成,使其成为自动化 CI/CD 流程的灵活工具。

本文由 Microsoft Visual Studio App Center 赞助。感谢您支持使 SitePoint 成为可能的合作伙伴。

软件开发最令人愉悦的部分是什么?编写优秀的代码。

最令人头疼的部分是什么?其他所有事情。

软件开发是一份很棒的工作。您可以用新的方法解决问题,让用户满意,并看到您构建的东西改善了人们的生活。但是,尽管我们花费大量时间编写代码,却往往同样花费大量时间管理相关的开销——而这完全是浪费时间。以下是一些最大的生产力瓶颈,以及我们在微软如何努力为您争取回这些时间。

  1. 构建

将您出色的应用程序交付到快乐用户手中的第一步是什么?让它存在。有些人可能认为从源代码到二进制文件的转换不会如此痛苦,但事实并非如此。根据项目不同,您可能需要每天在不同的平台上编译多次,所有这些等待都是您可以用来编写代码的时间。此外,如果您正在构建 iOS 应用程序,则需要一个 Mac 构建代理——这并非一定是您的主要开发工具,尤其是在使用跨平台框架构建应用程序时。

您希望收回这段时间,最好的方法是(这不会是我最后一次这么说)自动化。您需要自动化配置和硬件管理,以便应用程序在应该构建时自动构建。

Automate continuous integration and deployment to get on with coding我们尝试满足这一需求的方法是 Visual Studio App Center Build,这是一项自动化所有您不想手动重复的步骤的服务,因此您可以每次签入代码时或您、您的质量保证团队或您的发布经理想要时进行构建。只需将 Build 指向 Github、Bitbucket 或 VSTS 存储库,选择一个分支,配置一些参数,您就可以在云中构建 Android、UWP 甚至 iOS 和 macOS 应用程序,而无需管理任何硬件。如果您需要执行一些特殊操作,可以添加克隆后、构建前和构建后脚本进行自定义。

  1. 测试

我花了多年时间测试软件,在我的职业生涯中,总是有三个问题我总是讨厌听到:

“你完成了吗?”

“你能重现它吗?”

“真的那么糟糕吗?”

过去,很少有足够的时间或资源进行彻底、适当的测试,但移动开发加剧了这个问题。我们现在更频繁地向更多设备交付更多代码。我们不能浪费时间试图重现那个难以捉摸的关键性故障,我们也没有时间争论错误是否是致命的。同时,我们是最终负责高可见性故障或低质量产品的守门人,作为团队成员,我们希望提前解决问题以提高质量,而不仅仅是阻碍发布。

那么答案是什么?“自动化”,当然。但要进行有意义的自动化。如果无法将数据表和屏幕截图文件夹放在一起,那么它们就毫无意义。当您面临最后期限并且必须说服产品所有者做出决定时,您需要提供他们可以理解的信息,同时仍然为开发人员提供他们需要进行修复的细节。

Automate continuous integration and deployment to get on with coding为了帮助解决这个问题,我们创建了 App Center Test,这是一项在数百种配置的数千台真实设备上执行自动化 UI 测试的服务。由于测试是自动化的,因此您可以每次运行完全相同的测试,因此您可以立即识别性能和用户体验偏差,以及每次构建。测试会生成带有性能数据的屏幕截图或视频,因此任何人都可以发现问题,并且开发人员可以立即点击详细日志并开始修复。您可以通过在每次提交时在少数设备上进行测试来检查代码,然后在数百台设备上运行回归测试,以验证所有内容是否对所有用户都有效。

  1. 分发

因此,您已经构建了一个应用程序,并且它的性能符合预期。太好了!但是现在迭代真正开始了。您希望在将其推送到最终用户之前了解人们对它的看法。但是怎样做呢?组建一个测试版程序已经足够困难了,但要确保每个人都拥有应用程序的最新版本(如果它是移动应用程序,则确保您的用户甚至可以安装该应用程序)是一项全职工作——这是您团队中没有人想要的工作。

再次,自动化。当您准备好推送构建时,您需要自动化通知过程应用程序分发过程,并且您需要能够每次构建(或每次发布经理这么说)时触发两者。

Automate continuous integration and deployment to get on with coding我们的答案是 App Center 的 Distribute 服务。如果您有一份电子邮件地址列表,那么您就有将构建交付给内部或测试版测试人员所需的一切。创建一个分发组,上传一个构建(或从存储库构建一个构建),Distribute 将处理其余部分。如果您认为这听起来像 HockeyApp,那么您是对的。App Center Distribute 是 HockeyApp 的下一代产品,它将分发自动化与我们的其他 CI/CD 服务集成在一起。完成测试版测试后,Distribute 还可以将您的应用程序交付到用户手中,并部署到 Google Play、Apple 的 App Store 或(对于企业用户)Microsoft Intune。

  1. 关闭循环

人们经常谈论部署管道,但我们不仅仅追求单向推送。如果您能够了解您的应用程序发布之后发生了什么,您可以将该反馈提供给开发人员,并创建一个闭环以更快地改进您的产品。该信息采用两种形式——分析用户如何与您的应用程序交互,以及至关重要的是,报告这些应用程序如何以及何时发生故障。

让我们从第二个开始,因为崩溃是最糟糕的情况。当应用程序发生故障时,您希望快速了解它,但您还需要了解它到底有多重要。影响每个人的一个模糊功能中的崩溃通常比仅在 iPhone 4 上的完全启动失败更糟糕。App Center Crashes 对类似的崩溃报告进行分组,并向您显示受影响最大的平台,以便您可以做出明智的分类决策。当您准备好开始修复问题时,崩溃将被完全符号化,因此您拥有开始所需的信息。您可以自动在错误跟踪器中创建条目,以便开发人员无需离开工作流程即可开始修复问题。再次,更多自动化意味着更多时间编写更好的代码。

对于分析,您希望开箱即用地获得一些有用的东西。App Center Analytics 提供了应用程序所有者希望看到的基于参与度的用户和设备级别指标;例如,谁在使用哪些设备、频率、位置以及他们停留的时间。但是您的应用程序与其他人的应用程序不同,因此我们允许您创建和跟踪自定义指标,例如“预订了行程”或“订购了送货上门”。如果您需要更深入的分析,我们将启用持续导出到 Azure Application Insights。

  1. 使用您现有的工具

您可以整天理论化完美的 CI/CD 解决方案,但如果您无法付诸实践,那么这一切都是无用的。重要的是获得您现在可以使用的东西,这是否意味着与您非常喜欢(或无法摆脱)的现有系统集成,或者只是自动化手动流程的一部分,直到您可以完成其余部分。只要方向正确,即使是迈出很小的一步也总是更好。

显然,我有所偏见,并且认为您应该尝试我们的整个系统,但开发人员的需求各不相同。如果您只想采用 App Center 的部分功能,我们已经构建了它使其完全模块化。我们为每个 App Center 服务都提供了 REST API,并且我们已经预先构建了与 VSTS 等服务的集成。这应该是这样,因为您正在构建您的应用程序,因此您应该以的方式构建它。

我们很乐意让您尝试 Visual Studio App Center——它今天是全新的,并且可以免费开始使用。我们想听听您的想法!

关于使用 Visual App Center 自动化 CI/CD 的常见问题解答 (FAQ)

Visual App Center 在自动化 CI/CD 中的作用是什么?

Visual App Center 在自动化持续集成和持续交付 (CI/CD) 中发挥着至关重要的作用。它提供了一个集中式平台,开发人员可以在其中构建、测试、分发和监控他们的应用程序。自动化过程从开发人员将代码推送到存储库开始。然后,Visual App Center 自动触发构建过程,运行自动化测试以确保代码的质量,如果测试通过,则将应用程序部署到所需的环境。这种自动化减少了人工干预,从而加快了开发过程并确保交付高质量的应用程序。

Visual App Center 如何支持不同的编程语言?

Visual App Center 支持各种编程语言,包括 Java、Objective-C、Swift 和 .NET 等。这种广泛的支持允许开发人员在构建应用程序时使用他们喜欢的语言。此外,Visual App Center 为每种受支持的语言提供特定的构建工具和环境,确保最佳的构建性能和兼容性。

如何将 Visual App Center 与我现有的工具集成?

Visual App Center 提供对软件开发中常用的各种工具的集成支持。这些包括诸如 GitHub、Bitbucket 和 Azure Repos 等源代码控制系统。要集成,您需要导航到 Visual App Center 中应用程序的设置,并在“服务”部分下选择所需的服务。按照提示完成集成过程。

Visual App Center 如何确保我的应用程序的质量?

Visual App Center 通过自动化测试来确保应用程序的质量。它支持单元测试和 UI 测试,这些测试可以在 App Center Test Cloud 中的各种真实设备上运行。这些测试有助于在开发周期的早期识别和修复问题,从而确保交付高质量的应用程序。

我可以使用 Visual App Center 监控我的应用程序的性能吗?

是的,Visual App Center 通过其分析和诊断服务提供全面的监控功能。这些服务提供对应用程序使用情况和性能的见解,帮助您了解用户如何与您的应用程序交互并识别可能影响用户体验的任何问题。

Visual App Center 如何处理应用程序分发?

Visual App Center 通过允许您直接将应用程序部署到用户或应用商店来简化应用程序分发。您可以创建分发组、添加测试人员并向他们发送应用程序的最新版本。此外,您可以跟踪版本的状况,包括谁下载并安装了您的应用程序。

使用 Visual App Center 的成本是多少?

Visual App Center 提供免费层,其中包括对大多数服务(包括构建、测试、分发和监控)的访问。但是,某些功能(例如在 Test Cloud 中的真实设备上进行测试)会产生额外费用。有关详细的定价信息,您可以参考 Visual App Center 定价页面。

Visual App Center 的安全性如何?

Visual App Center 非常重视安全。它使用行业标准的安全措施,包括加密静态数据和传输数据,以保护您的数据。此外,它符合各种监管标准,包括 GDPR、ISO 27001 和 SOC 2 等。

我可以将 Visual App Center 用于跨平台应用程序开发吗?

是的,Visual App Center 支持 Xamarin、React Native 和 Cordova 等跨平台应用程序开发框架。这允许您使用单个代码库为 iOS 和 Android 构建、测试和分发应用程序。

如何开始使用 Visual App Center?

要开始使用 Visual App Center,您需要创建一个帐户,添加您的应用程序并配置您的构建、测试和分发设置。然后,您可以开始将代码推送到存储库,Visual App Center 将处理其余部分。有关详细说明,您可以参考 Visual App Center 文档。

以上是自动化连续集成和部署以进行编码的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板