2022 年 11 种最佳移动自动化测试工具

news2024/12/28 20:38:01

移动应用程序开发正在以前所未有的速度增长,并且相应地需要使用正确的移动测试策略执行彻底的测试。这些策略主要涉及使用各种移动自动化测试工具。 移动测试工具可帮助企业自动化其应用程序测试,并减少额外的成本、时间和人为错误的机会。我们生活在一个移动驱动的世界中,每个垂直行业都通过移动应用程序扩展其基础。据Statista称,到 2030 年,全球将有 50 亿移动用户。为了开展业务并保持竞争力,公司必须接触尽可能多的人。企业使用移动应用程序来扩大商机、提升品牌知名度、获取新客户并留住现有客户。应用程序测试就是这样一种指标,可确保客户得到他们想要和应得的东西。它包括各个方面,例如在每次升级环境中验证不同的操作系统、设备、组合等。
在这里插入图片描述

在这篇关于最好的移动自动化测试工具的博客中,我们列出了 11 种最好的移动自动化测试工具,它们的优势和业务友好的特性。
  什么是移动应用自动化测试?

在进入最佳移动自动化测试工具和框架列表之前,让我们首先了解什么是移动自动化测试。移动应用程序测试是开发生命周期中最重要的步骤之一。这包括针对各种设备和操作系统测试应用程序的功能。

顾名思义,移动应用程序自动化测试是使用一种或多种自动化工具测试移动应用程序的过程。通过利用移动应用程序自动化测试,企业可以确信他们的移动应用程序已准备好向公众发布。

自动化工具执行各种测试来检查应用程序的特性和功能。这些测试包括可访问性、效率、加载时间、性能等。使用自动化测试工具测试移动应用程序有助于企业在测试应用程序和软件时降低成本、时间和人为错误的可能性。

执行移动应用程序自动化测试时的挑战

随着人们越来越习惯于高级移动应用程序,创建更好的应用程序的挑战不断增加。这导致 QA/自动化团队在执行这些应用程序的测试时面临更多挑战。

以下是执行移动自动化测试时的五个关键挑战:

1、球设备呈指数增长

2021 年,全球智能手机销量超过 15 亿部。由于操作系统种类繁多,设备和型号数不胜数,可以想象全球智能手机的多样性。在测试每个操作系统和设备的移动应用程序兼容性时,这构成了巨大的挑战。

2、不同类型的移动应用程序

移动应用程序可以进一步分为原生应用程序、混合应用程序和 Web 应用程序等类别。每种类型对后端团队来说都是一个挑战,需要不同的配置和测试策略。考虑将这些类型中的两种或多种结合起来;它将增加流形的复杂性。请浏览这个关于Web vs Hybrid vs Native Apps的博客,以了解有关这些应用程序的更多信息。

3、不同操作系统的 UI 变化

我们知道不同的操作系统带有不同的 UI,这就是测试移动应用程序成为挑战的地方。UI 中的这些变化为每个应用程序提供了不同的使用指南和布局。因此,用这些指标测试不同的用户界面是一个很大的挑战。

4、安全挑战

与安全相关的挑战是最需要应对的挑战。尽管像 LambdaTest 这样的移动自动化工具是基于私有云的,但在公共云上运行的工具和设备可能会威胁到安全性。仅举几例——易于缓存访问、较差的加密等。

5、选项太多

市场涌现出许多移动应用程序自动化测试工具。依赖免费的公共云工具可能会导致安全漏洞。此外,选择一种或多种付费工具可能会适得其反并影响预算。因此,选择适合个人业务需求的产品是一项相当大的挑战。

企业在测试移动应用程序时面临更多此类挑战。但是,许多出色的移动自动化测试工具(如下文所述)有助于克服这些挑战并提高效率,从而实现高测试覆盖率。

最好的移动自动化测试工具

在本文章关于移动应用程序测试的这一部分中,我们将研究 2022 年 11 种最佳移动自动化测试工具。

一、LambdaTest

LambdaTest 是最好的移动自动化测试工具之一。它受到 Microsoft、Cisco、Suncorp、Capgemini 等大公司的信任。它是一种高效的自动化测试工具,可让您对应用程序执行实时和交互式测试。它的Android 模拟器和iOS 模拟器消除了对显式设备库的需求。

LambdaTest 等云测试工具通过提供在线 APK 模拟器和模拟器,可以在云上测试您的原生和混合移动应用程序。它融合了所有触摸屏手势,如长按、点击、捏合、滚动等。它还允许通过Appium、Espresso、XCUITest在真实设备云上对移动应用程序进行高性能测试。(包括 Android、iOS 和 Windows)。

是什么让 LambdaTest 成为最好的移动自动化测试工具之一?

使用 LambdaTest 的云测试平台进行移动应用程序自动化测试可加速您的业务交付。LambdaTest拥有所有模拟器、模拟器、真实云设备以及包含 3000 多个真实设备和操作系统组合的在线设备场,成为像您这样的企业可以依赖的一体化移动自动化测试工具。

以下是使用 LambdaTest 的一些主要优势:

它为测试提供了用户友好和交互式的模拟器和仿真器选择。您可以对 3000 多个真实设备池执行测试。LambdaTest 不需要任何设置或安装。其基于 Web 的平台允许您在登录后立即开始测试。它提供与详细测试日志和见解的无缝集成。LambdaTest 提供免费试用和负担得起的许可计划。它支持与其他测试工具的集成,例如 Appium、用于Android 自动化测试的 Espresso和用于iOS 自动化测试的 XCUITest ,从而提高了效率。

二、Appium

Appium 是一个非常流行的开源自动化测试框架,支持各种操作系统的自动化。它可以与本机、混合和移动 Web 应用程序一起使用,以在各种环境中进行测试。它允许用户使用各种编程语言(如 Java、Perl、Python 等)编写自动化脚本。

作为一个跨平台的测试工具,它将使用户能够通过结合Selenium WebDriver协议为 iOS、Windows 和 Android 运行移动自动化测试。Appium 在客户端-服务器架构上工作,由三个组件组成:

Appium 客户端:它是用任何编程语言编写的自动化代码。

Appium Server:它以 JSON 格式接收并执行来自客户端的命令请求。

终端设备:它是执行测试的仿真器或实时设备。

是什么让 Appium 成为最好的移动自动化测试工具之一?

它是一个开源自动化测试工具,因此是免费的。Appium 支持多种编程语言来编写测试脚本。它可以与各种 CI 工具集成,并通过 Internet 提供广泛的支持。总而言之,Appium 移动测试是应用测试自动化的绝佳选择。但是,它有一些限制:你不能在 Windows 设备上运行 Appium 检查器。Appium 在 iOS 和 Android 上的设置时间很复杂。Windows 操作系统不支持应用程序服务器的脚本录制。在包含 3000 多台真实设备的 Appium 云上自动化您的 iOS 应用程序。

三、testRigor

testRigor 是一款人工智能驱动的无代码自动化测试软件。它允许您为本地和混合移动应用程序构建无代码测试脚本。即使是手动 QA 人员(没有任何编码技能)也可以使用 testRigor 编写自动化测试脚本,只使用简单的英语。

它支持超过 2000 种组合来执行跨浏览器测试。但是,要在一系列真实设备上执行自动化测试,您需要将它们与 LambdaTest 等云平台集成。使用 testRigor,您可以在 30 分钟内执行整个测试套件。它还带有自动截图功能(在每一步都对测试进行截图)。

您执行的所有测试及其结果都是公开的,即任何人都可以查看脚本和结果。testRigor 还允许任何提供者进行 CI/CD 管道集成。最好的部分是 - testRigor 还提供免费试用期和演示服务。

是什么让 testRigor 成为最好的移动自动化测试工具之一?

只需使用简单的英语,它就可以将测试脚本的创建速度提高 15 倍。即使将应用程序移动到不同的框架,您也可以执行相同的测试套件。声称可以将测试维护时间减少 95%。testRigor 是超级可靠的,因为它为人类各自创建了一个测试套件,也就是说,它不依赖于 XPath 之类的源。

四、Kobiton

移动应用测试最关键的方面之一是跨设备测试。您必须确保您的应用程序在不同的设备和操作系统版本上按预期运行。Kobiton 可以帮助您完美地做到这一点。它是一个基于云的移动自动化测试工具,允许用户在各种设备和操作系统版本上以连续的时间间隔快速运行测试。

Kobiton 拥有一个 DLM(设备实验室管理),允许企业合成一个万无一失的移动自动化测试云。它还提供自动生成测试脚本的无脚本自动化功能。使用 Kobiton 的另一个优点是它的故障处理。它以最少的人工干预准确地解决了所有发生的测试失败。

仿真器和模拟器有时可能会停止根据真实用户数据生成真实条件。这就是 Kobiton 在真实移动设备上执行自动化脚本的原因。它有助于生成实时用户条件。测试完成后,它会生成包含详细命令、日志和元数据的完整测试报告。除此之外,Kobiton 还支持 ADB shell 命令、设备管理、复杂手势和地理位置,以支持万无一失的移动应用程序测试。

是什么让 Kobiton 成为最好的移动自动化测试工具之一?

从旧版本到最新版本的真实设备配置。支持数据日志和组合测试历史记录,以支持集中化和协作。提供增强安全性的部署选项。自带内部设备实验室管理,让您的企业有效利用内部设备。许可计划是负担得起的。

五、ZAPTEST

ZAPTEST 是一款采用计算机视觉技术的软件自动化测试工具。它有助于 UI、RPA 和 API 的跨平台和跨浏览器测试的界面自动化。它是一个全栈测试工具,可以自动测试移动应用程序、网站、桌面应用程序、API 等。

它允许您为所有平台、设备和版本运行一个脚本。如果您想同时在不同平台上运行多个测试,这个工具就是您的不二之选。这种同时处理多个测试和 AUT 配置的功能称为 M-RUN。

此外,它还具有无代码自动化功能(适用于编码知识很少或没有的人)。ZAPTEST 的卖点是它的投资回报率计算器,它允许像您这样的企业计算这种自动化工具的投资回报率。它声称通过最大化自动化测试能力来产生 10 倍更好的投资回报率。

虽然它有一个免费版本,但付费许可证开放了它的所有特性和功能。您可以联系供应商了解定价详情。

是什么让 ZAPTEST 成为最好的移动自动化测试工具之一?

它带有 RPA 软件自动化和不同平台上的并行执行。API 测试和一键式自动文档功能是无缝的。提供基于功能和性能的自动化测试。支持测试脚本的无代码开发

六、Digital.ai

Digital.ai 是领先的软件测试工具之一,支持对每个主要操作系统进行自动化测试。从 iOS 和 Android 到 Windows 和 Blackberry,它都支持。它还带有一个客户端库的特性,可以托管 Java、Python、C# 等中的锅炉代码,以帮助 QA 更快、更有效地开发测试脚本。

专门针对移动自动化测试,Digital.ai 为移动应用程序提供基于图像和基于对象的测试。基于图像的测试通过图像识别来识别元素,而基于对象的测试利用 XPath。

Digital.ai 允许您对不同的操作系统使用相同的脚本,只需进行一些小的更改。总而言之,它是一个很好的工具,但既不是免费的也不是开源的。你甚至不能选择免费试用。要了解有关定价和计划的更多信息,您可以联系 Digital.ai 供应商。

是什么让 Digital.ai 成为最好的移动自动化测试工具之一?

支持移动应用测试的基于图像和基于对象的识别。支持所有主要操作系统。它带有简单的屏幕截图、屏幕录制和文档生成功能。它也有一些相当大的局限性:您需要一个外部插件来并行执行测试用例。没有免费试用;因此对于小型组织来说有点昂贵。

七、Eggplant

Eggplant 与此列表中的其他人一样,是一种软件自动化测试工具,可帮助您执行端到端移动应用程序测试。它由 TestPlant 团队开发。它为您的移动应用程序执行基于对象的测试。它还使您能够自动化所有重复性任务并扩展测试用例维护。Eggplant 的 UI 用户界面友好且非常有弹性。

它为您的移动应用程序提供 A-to-Z 测试,即从 UI 到核心数据库和 API 调用。Eggplant 的 CI/CD 管道集成服务是最好的之一。Eggplant 在需要对其网站或移动应用程序进行功能和性能测试的小型企业中非常受欢迎。

EggPlant 使用人工智能和机器学习来支持其多功能自动化测试。它还有助于对移动应用程序执行基于图像和基于对象的测试。人工智能驱动的方法还允许测试用例的无代码脚本。

是什么让 Eggplant 成为最好的移动自动化测试工具之一?

它是一个非常以用户为中心且对初学者友好的自动化测试工具。允许测试 UI、API 调用、数据库等。自动化测试以更好地了解用户行为并指示相关错误,无需任何干预。它无缝集成了 CI/CD 管道。

八、ZeuZ

ZeuZ 是最实惠的基于云的自动化测试工具之一。虽然它不提供免费版本,但它提供了免费试用版,起价仅为 50 美元/月。

它是一种人工智能驱动、支持 DevOps 且无脚本的自动化工具,在小型企业中相对流行。它提供了一个整体的移动应用程序测试解决方案,具有 CI/CD 集成、自动调试、丰富的报告、文档和类似 AWS 的 Device-Farms。

ZeuZ 最受欢迎的功能之一是自动触发的电子邮件和基准测试。它还托管可重用的模板和脚本以及屏幕捕获功能。它允许您执行多项测试,例如健全性、安全性、回归和端到端测试。您可以将 ZeuZ 与 Ansible、Asana、Hira、Slack 等系统集成。虽然它易于使用,但您可以从其论坛和视频教程中清除任何疑问。

是什么让 ZeuZ 成为最好的移动自动化测试工具之一?

一次性脚本编写。您可以在许多操作系统上运行相同的脚本。提供 AI 支持的基于对象的测试和内置的测试等待机制。它可以通过与Selenium和 Appium 等框架集成来扩展。作为一个多合一的测试套件。

九、Calabash

Calabash 是一个免费的开源移动测试工具,兼容 iOS 和 Android 移动应用程序。它的卖点是使用户能够创建测试脚本而无需编写任何代码,只使用简单的英语。

您可以使用 Calabash 与测试代码交互的令人惊叹的库来测试您的本地和混合移动应用程序。它通过自动与所有应用程序元素(即按钮、滚动、验证等)交互来执行测试。

您可以通过调整一些微小的更改在多个操作系统上运行 Calabash 测试脚本。它在真正的移动设备上效果最好,而不是在模拟器和模拟器上。Calabash 的集成功能也很棒。您可以轻松集成 Jenkins 和 CI/CD 管道等交付工具。

是什么让 Calabash 成为最好的移动自动化测试工具之一?

它支持 Cucumber 框架,这对非技术人员来说是一个福音。允许用简单的英语编写测试脚本。相同的测试脚本适用于 iOS 和 Android 设备。允许滚动、捏合、点击等触摸屏功能。虽然它是一个很棒的自动化工具,但 Calabash 有一些限制:对于 iOS,您需要编写基于代码的脚本。如果测试的一个步骤失败,则所有后续测试用例都将自动丢弃。

十、Ranorex Studio

Ranorex 是一款出色的自动化测试工具,可提供出色的移动应用程序。它支持混合和原生移动应用程序的所有形式的测试,即数据驱动、回归、功能、关键字驱动测试等。

它使您能够为 Windows 操作系统创建测试,并在以后为 iOS 和 Android 设备将它们排入队列。它还支持在 Firefox、Chrome、Edge 和无数其他浏览器上进行全面的跨浏览器测试。它还与 DevOps 工具、JIRA、testRail、Travis、Jenkins 等很好地集成。

虽然它不是免费工具,但它确实提供了 30 天的试用期。在 Ranorex 上创建和运行测试的许可有点贵,但值得。作为个人,您可以花 3590 美元获得 Studio 许可证,而作为团队,您可以花 6000 美元获得企业许可证。

是什么让 Ranorex Studio 成为最好的移动自动化测试工具之一?

允许创建无代码测试脚本。UI 是用户友好的,支持团队 24×7 全天候可用。支持 Android 和 iOS 设备的移动应用程序测试。与其他第三方系统的集成是无缝的。在所有积极因素中,Ranorex 有一些限制:许可证费用昂贵。它不支持 macOS,支持的编程语言较少。

十一、Perfecto

最后但并非最不重要的——Perfecto。它是最广泛使用和推荐的基于云的自动化测试工具之一。它支持所有主要操作系统并提供测试以帮助您交付出色的移动应用程序。

Perfecto 通过支持跨多个真实世界和虚拟设备的无与伦比的并行测试来节省大量时间。它提供功能测试、性能测试、安全测试、回归测试和测试文档生成。它还提供与许多第三方系统(如 IDE、JIRA、CI/CD 等)的强大集成。

Perfecto 的大部分客户是大型公司和企业。考虑到所有积极因素,Perfecto 的定价范围更高。它提供多种计划,从每月 90 美元到每月 150 美元不等。它还附带 14 天的试用期。

是什么让 Perfecto 成为最好的移动自动化测试工具之一?

以财富500强为客户的行业专家。与 CI/CD 管道和其他第三方系统无缝集成。支持团队提供更快的技术解决方案和反馈。具有跨平台支持的各种虚拟和实时设备。提供的安全性是企业级的。

结论

在这个充满急躁客户的移动驱动世界中,对于企业来说,提供没有错误并满足用户期望的产品(移动应用程序)非常重要。因此,每个移动应用程序都必须经过彻底的测试系列以确保质量。

但是从广泛的移动测试工具中进行选择可能比测试本身更乏味。您必须确保您选择的工具在各个方面都使您受益并符合您的需求。如上所述,它们是最好的 11 种移动自动化测试工具及其产品和功能。在从列表中选择一个之前,请考虑与供应商交谈并确认所有指标。

常见问题 (FAQ)

哪个工具用于移动自动化测试?

Appium 是一个测试框架,可用于 Android 和 iOS 应用程序的功能和回归测试。它是一种有效的工具,可以提高应用程序的整体功能。

什么是移动测试自动化?

测试自动化是在没有人工干预的情况下编写和执行软件测试的过程。移动测试自动化是其中的一个子集,其中测试是在移动应用程序上完成的。

Appium 与 Selenium 相似吗?

Appium 与 Selenium 相似,因为它们都是用于自动化 Web 应用程序测试的软件测试工具。它们是不同的,因为 Appium 是专门为移动环境设计的测试自动化工具。相比之下,Selenium 是一个跨平台的开源测试自动化框架,适用于所有操作系统和浏览器。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/126547.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

用QT实现一个模型交互的网络请求

最近,我接收到了一个项目需求,具体内容如下: 具体要求: 1.交付给我程序的源代码即可,因为我要集成到我的大软件中,要求采用C和QT开发; 2.程序首先检测当前用户环境有没有联网,如果没…

linux的权限

前言 学习权限我们先理解一下xshell 我们使用Xshell的存在的意义 帮助进行命令行传递和返回结构保护操作系统 linux的权限 (1)权限的概念 限制人的,访问的对象可能没有这种“属性” 权限:一件事情是否运行被谁“做” 权限 人 事物属性 (2)linux的上…

【vector的各个begin迭代器详解】

前言 本文是熊猫练习stl一段时间之后,对vector容器的各种迭代器产生了很大的好奇心,于是对它们进行了以下探究。 从图中我们可以知道,vector一个有四组不同的迭代器, 其中,字符 ‘c’ 是 const 常量的意思&#xff0c…

严蔚敏 《数据结构C语言版》读书笔记

目录 第一章 线性表 顺序表 Sequence Table 带头双向循环链表 Linked List 第二章 栈和队列 栈 Stack (顺序存储) 检查括号是否匹配 队列 Queue (链式存储) 循环队列 Circle Queue 第三章 串 模拟实现string.h库函数 第…

2 面向对象编程

面向对象编程(OOP) **面向对象的程序(oop)**是由对象组成的, 每个对象包含对用户公开的特定功能部分和隐藏的实现部分。 传统的结构化程序设计通过**设计一系列的过程(即算法)**来求解问题。一旦确定了这些过程, 就要开始考虑存…

设备通过发放批量自注册场景体验【玩转华为云】

创建实例 首先,根据提示创建实例 实例名称实例描述 创建成功 可以看到,当前实例已经在运行中了 设备发放 在左侧列表中点击“设备发放” 功能简介 您可以通过“设备发放”轻松管理跨多区域,海量设备的发放工作,实现单点发放管…

.Net WebApi— SwaggerUI配置

最近新公司用了特别老的技术【Web 服务 .asmx文件 做WebService服务】,而WebApi早就流行四五年了; 实在太过于简陋,关键其他系统对接的同事,经常说对接不上,如果接口过多确实不方便接口管理,所以最终决定重…

基于Amlogic 安卓9.0, 驱动简说(一):字符设备驱动,手动创建设备

文章目录一、前言二、系列文章三、解析:完整源码1. helloworld_amlogic_char_driver.c2. Makefile四、编译执行4.1 编译4.2 执行(1)部署(2)加载ko文件(3)查看结果(4)是否…

android 皮肤包换肤之Resources加载(一)

Android 换肤之资源(Resources)加载(一) 本系列计划3篇: Android 换肤之资源(Resources)加载(一) — 本篇setContentView() / LayoutInflater源码分析(二)换肤框架搭建(三) 看完本篇你可以学会什么? Resources在什么时候被解析并加载的 Application#ResourcesActivity#Reso…

【Python黑帽子】——搭建TCP端口扫描器

作者名:Demo不是emo 主页面链接:主页传送门 创作初心:舞台再大,你不上台,永远是观众,没人会关心你努不努力,摔的痛不痛,他们只会看你最后站在什么位置,然后羡慕或鄙夷座…

计算1到n的和(不用循环且逐步限制条件)

目录 一、题目简单描述 二、递归实现 1、if…else… 2、三目运算符 ?: 3、逻辑与操作符 && 三、公式实现 四、C调用构造函数累加法 注:满足题目要求的解法有递归实现的第三种、公式实现、C调用构造函数累加法三种方法、 一、题目简…

死锁的成因以及解决方案

🎈专栏链接:多线程相关知识详解 目录 一.什么是死锁以及死锁的成因 Ⅰ.一个线程一把锁 Ⅱ.两个线程两把锁 Ⅲ.多个线程多把锁 二.死锁的解决方案 一.什么是死锁以及死锁的成因 死锁是一个线程加上锁了之后,解不开了 在多线程编程中,我们为了防止多…

【微服务】3、NACOS 的使用

🔖 Eureka 可以做注册中心【https://github.com/Netflix/eureka】 🔖 但它的功能比较少,仅仅注册中心 🔖 nacos 也可做注册中心,且功能更加丰富【https://nacos.io/】 一、了解 Nacos ✏️ Nacos 是阿里巴巴的产品&am…

【Python】PyQt拖动控件对齐到网格

实现如下需求: 在PyQt界面上有一个控件,实现其可任意拖动,且鼠标释放时自动对齐到网格。 目录1.控件任意拖动并对齐到网格2.进阶:双击控件使其移动到其他网格1.控件任意拖动并对齐到网格 如下按钮(尺寸100100),可任意…

【K3s】第11篇 解决“1 Preemption is not helpful for scheduling”问题

目录 1、遇到问题 2、问题解决 1、遇到问题 sudo kubectl get pods -A sudo kubectl describe pods coredns-b96499967-q5lzw -n kube-system Events: Type Reason Age From Message ---- ------ ---- ---- …

YXC | ADAS自动驾驶四大模块选用晶振有何要求

近几年无人驾驶汽车(ADAS)热度非常高,不少汽企巨头纷纷入局,那么无人驾驶汽车需具备什么硬件设备呢? 自动驾驶汽车依靠人工智能(AI)、视觉计算、监控系统模块、雷达测距系统模块、和GPS全球定位…

SpringBoot 这两个配置文件有什么区别?

本文讲解了关于 SpringBoot 自动装配的两个配置文件spring.factories 和 spring-autoconfigure-metadata.properties有什么区别?点击上方“后端开发技术”,选择“设为星标” ,优质资源及时送达读过上一片文章你可能会发现,在自动装…

第二个脚本——自动登录学习通

目录 本篇主要内容: 详细步骤: 第一步:对登入页面进行分析 第二步:模拟点击,表单填写和多边框操作原理介绍 模拟点击 表单填写 操作多选框: 第三步,实现自动登录 完整代码: 本篇主要内…

日百万流量网站励志一生被K

我是卢松松,点点上面的头像,欢迎关注我哦! 曾经每天小百万IP的网站、Z-blog流量最大的网址之一,励志一生这两周被百度K了,流量瞬间没有了,联盟广告收入估计日落千丈。这个网站有多牛可能很多人不清楚&#…

Linux内存管理:NUMA技术详解(非一致内存访问架构)

一.背景 所谓物理内存,就是安装在机器上的,实打实的内存设备(不包括硬件cache),被CPU通过总线访问。在多核系统中,如果物理内存对所有CPU来说没有区别,每个CPU访问内存的方式也一样&#xff0c…