【自动化测试】—— Appium安装配置保姆教程(图文详解)
目录
一. 环境准备
二. JDK安装
1. 下载JDK
2. 安装JDK
3. 配置环境
4. 验证安装
三. Android SDK安装
1. 下载Android SDK
2. 安装Android SDK
3. 安装工具
4. 配置环境
5. 验证安装
四. NodeJS安装
1. 下载NodeJS
2. 安装NodeJS
3. 验证安装
4. 安装淘宝镜像
五. Python及依赖包安装
1. 安装Python
2. 安装依赖包
六. APPium安装
1. 下载Appium
2. 安装Appium
3. 编辑配置
4. 启动服务
APPium是一个开源测试自动化框架,适用于原生、混合或移动Web应用程序的自动化测试工具。 APPium使用WebDriver协议驱动iOS、Android等应用程序。
作为一个自动化移动应用测试框架来说,可以很好的满足大部分移动应用测试的需求。作为当今仍然主流的自动化测试框架,各位测试同学要熟练的使用也就成为大家日常的基本内容之一。
一. 环境准备
本文以安卓自动化测试环境为例,需要安装的环境主要有以下几个:
- 安装JDK
- 安装Android SDK
- 安装NodeJS
- 安装Python及依赖包
- 安装APPium
安装包网盘打包下载:https://pan.quark.cn/s/f0470d00ff0c
二. JDK安装
因为Android 是由 Java 语言开发的,所以我们首先需要安装Java环境,Java 环境分JDK 和JRE ,JDK是面向开发人员使用的SDK,它提供了Java的开发环境和运行环境。JRE是指Java的运行环境,是面向Java程序的使用者,而不是开发者。
1. 下载JDK
推荐Java8版本,其他版本不兼容,会导致AppiumServer启动不了,根据自己的系统选择相应版本下载,我这里使用x64 install。
官网下载地址:Java Downloads | Oracle
2. 安装JDK
(1)双击下载好的JDK安装包,点击【下一步】
(2)点击“开发工具”,点击【下一步】进行安装(点击“更改”可以修改安装路径)
(3)等待安装
(4)安装完成,点击“关闭”。
3. 配置环境
(1)右击此电脑-->属性-->高级系统设置-->环境变量
(2)配置JAVA_HOME:点击【系统变量】下的【新建】,输入变量名、变量值
变量名:JAVA_HOME
变量值:JDK的安装目录,如:C:\Program FilesJava\jdk1.8.0_211
(3)配置CLASSPATH:点击【classpath】下的【新建】,输入变量名、变量值
变量名: classpath
变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
(4)配置Path:在系统变量列表下滑找到变量“Path”,点击【编辑】,在系统变量Path中添加:
%JAVA_HOME%\bin
%JAVA_HOME%\jre\bin%
4. 验证安装
键盘 【win+R】,输入cmd打开命令行窗口,输入:java -version,显示Java版本说明安装成功。
三. Android SDK安装
安装完sdk,就可以直接使用adb命令了,我们做app自动化测试,也需要sdk环境的依赖。
1. 下载Android SDK
官网下载地址:https://www.androiddevtools.cn/
(1)打开官网链接,【Ctrl+F】搜索 SDK Tools,找到系统对应版本下载
2. 安装Android SDK
(2)双击运行下载好的exe文件,开始安装安装sdk manage
(3)点击【Next】
(4)继续点击【Next】
(5)选择“Installforanyoneusing thiscomputer",点击【Next】
(6)点击“Browse"可以修改安装路径,点击【Next】
(7)点击【Install】
(8)等待安装完后,点击【Next】
(9)安装完成,点击【Finish】
3. 安装工具
勾选安装的工具:
- Tools选择前面3个
- Android 10 全部勾选
- Extrats 全部勾选
(1)Tools选择前面3个
(2)Android 10(API 29) 全部勾选
(3)Extrats 全部勾选,点击【Install 21 packages】进行下载
(4)选择Packages名,勾选“Accept License",全部勾选完成后,点击”Install"
(注:以下界面实在勾选不上的可以跳过,点击【Install】进行安装即可)
(5)等待安装完成(时间会比较长)
(6)安装完成,点击【ok】,关闭窗口。
4. 配置环境
(1)右击此电脑-->属性-->高级系统设置-->环境变量
(2)新建系统变量,输入变量名、变量值
变量名: ANDROID_HOME
变量值: 自己的安装目录 如C:\Android\android-sdk
(3)编辑用户变量中的Path,新增两个路径:
%ANDROID_HOME%\tools
%ANDROID_HOME%\platform-tools
5. 验证安装
键盘按【 win+R】,输入cmd,打开命令行窗口,输入:adb version
四. NodeJS安装
Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行时环境,允许开发者在服务器端运行 JavaScript。它以非阻塞、事件驱动的架构处理高并发,适用于构建高效的网络应用。
在 APP 自动化测试中,Node.js 常用于构建测试框架(如 WebDriverIO、Appium)。其异步处理能力可以高效执行多线程测试,快速模拟用户操作和验证 APP 功能,从而提升测试的自动化和并发能力。
1. 下载NodeJS
官网下载地址:Node.js — Download Node.js®
选择对应你系统的Node.js版本,这里我选择的是Windows系统、64位
2. 安装NodeJS
(1)双击安装包,开始安装Node.js
(2)点击【Next】
(3)点击【Next】
(4)这里可以修改安装路径,修改完后继续点击【Next】
(5)选择默认安装,继续点击【Next】按钮
(6)不选中,直接点击【Next】按钮
(7)点击【Install】按钮进行安装(点击安装后会弹出提示,点击【是】,需要以管理员身份运行)
(8)等待安装
(9)安装完毕,点击【Finish】按钮
3. 验证安装
键盘按【 win+R】,输入cmd,打开命令行窗口,输入:
node -v // 显示node.js版本
npm -v // 显示npm版本
如上,搞定,说明安装成功。
4. 配置npm仓储和缓存
(1)命令行输入:npm config set registry https://registry.npmmirror.com/
(2)在node.js安装目录(默认安装目录:C:\Program Files\nodejs)创建cache 和 global文件夹
(3)令提示符依次执行下面命令,依次输入并按下回车键(Enter)
npm config set prefix "C:\Program Files\nodejs\global"
npm config set cache "C:\Program Files\nodejs\cache"
(4)输入命令【npm config ls】,按回车键,查看配置是否成功
4. 配置环境
(1)右击此电脑-->属性-->高级系统设置-->环境变量
(2)点击【系统变量】下的【新建】,新建系统变量,输入变量名、变量值
变量名: NODE_PATH
变量值: 自己的安装目录 如:C:\Program Files\nodejs\global\node_modules
(3)在系统变量列表下滑找到变量【Path】,点击【编辑】,编辑Path,变量【C:\Program Files\nodejs\】如果存在,就新建剩下的两个变量即可。
C:\Program Files\nodejs\
%NODE_PATH%
C:\Program Files\nodejs\global
- 测试Node.js
配置完成后,全局安装一个最常用的 express 模块进行测试
(1)右键使用管理员方式打开
(2)cmd命令提示符,输入:npm install express -g // -g代表全局安装
出现以下配置表示配置成功。
4. 安装淘宝镜像
淘宝镜像是淘宝团队为国内用户提供的npm镜像源,它与官方镜像源保持同步,并提供了更快的下载速度。
(1)管理员身份打开cmd,输入镜像安装命令:
npm config set registry https://registry.npmmirror.com
(2)查看淘宝镜像是否安装成功,执行命令:
npm config get registry
显示下图网址则说明安装成功!
五. Python及依赖包安装
1. 安装Python
参考文档:Python——安装教程(图文详解)-CSDN博客
Pycharm——安装教程(图文详解)-CSDN博客
2. 安装依赖包
需要安装的依赖包,如下:
- nose
- selenium
- Appium-Python-Client
启动cmd,分别输入:
pip install nose
pip install selenium
pip install Appium-Python-Client
进行安装操作, 如下图所示:
(1)nose安装
(2)selenium安装
如果系统中已经安装过了,再次进行安装时,会出现类似如下界面所展示的信息:
(3)Appium-Python-Client安装
安装完Python后,需要将 Python与Appium关联起来,cmd打开命令行窗口,输入:pip install Appium-Python-Client,提示成功就可以了。
六. APPium安装
1. 下载Appium
GitHub 在国内的下载速度比较慢,如果你没有【快速访问GitHub】的条件, 可以直接通过下面的网盘地址下载 。
官网下载地址:https://github.com/appium/appium-desktop/releases
进入官网,选择你电脑对应的操作系统版本下载。
2. 安装Appium
(1)双击下载好的exe可执行程序,进行安装
(2)选择“仅为我安装”,点击【安装】
(3)等待安装
(4)点击“完成”,安装完成。
(5)运行界面如下:默认IP为本机的(无需改动),端口默认4723。
3. 编辑配置
点击【Edit Configurations】编辑配置,出现默认配置,说明环境配置成功。
4. 启动服务
点击【startServer】启动服务器,看到下图的界面就说明服务是启动成功的(注:如果Android-sdk或者JDK没有安装成功,这里是无法启动的)。
如上,搞定,Appium环境搭建成功!
相关文章:
【自动化测试】—— Appium安装配置保姆教程(图文详解)
目录 一. 环境准备 二. JDK安装 1. 下载JDK 2. 安装JDK 3. 配置环境 4. 验证安装 三. Android SDK安装 1. 下载Android SDK 2. 安装Android SDK 3. 安装工具 4. 配置环境 5. 验证安装 四. NodeJS安装 1. 下载NodeJS 2. 安装NodeJS 3. 验证安装 4. 安装淘宝镜像…...
穿越火线怀旧服预约网页vue3版本
源码下载地址: https://github.com/superBiuBiuMan/crossfire-old-vue3版权来自穿越火线,项目仅供参考学习!!! 效果 源码下载地址: https://github.com/superBiuBiuMan/crossfire-old-vue3预览地址: https://crossfire.123916.xyz/官网效果: https://www.cfhuodong.com/2025-…...
《Keras3从头开始的图像分类》
Keras3从头开始的图像分类 作者:fchollet创建日期:2020/04/27最后修改时间:2023/11/09描述:在 Kaggle Cats vs Dogs 数据集上从头开始训练图像分类器。 (i) 此示例使用 Keras 3 在 Colab 中查看 • GitHub…...
Apache Hop从入门到精通 第三课 Apache Hop下载安装
1、下载 官方下载地址:https://hop.apache.org/download/,本教程是基于apache-hop-client-2.11.0.zip进行解压,需要jdk17,小伙伴们可以根据自己的需求下载相应的版本。如下图所示 2、下载jdk17(https://www.microsoft…...
Vue.js组件开发-图片剪裁性能优化最佳方案实例
在Vue.js组件开发中,优化图片剪裁性能的最佳方案通常涉及多个方面的综合考虑。以下是一个结合多个优化策略的图片剪裁组件性能优化实例: 1. 组件设计 首先,设计一个简洁且高效的图片剪裁组件,确保其功能明确且易于使用。组件应包…...
React - router的使用 结合react-redux的路由守卫
web端使用路由安装的是 react-router-dom "react-router-dom": "^5.2.0"在组件中使用路由,我们先设置2个路由,分别是首页、关于 // src/components/RouteSample.jsimport React from react; // 引入路由需要的基础模块 import {Bro…...
day09_kafka高级
文章目录 kafka高级今日课程内容核心概念整理Kafka的数据位移offset**为什么 Kafka 的 offset 就像是“书签”?****实际意义** Kafka的基准/压力测试测试生产的效率测试消费的效率 Kafka的分片与副本机制kafka如何保证数据不丢失生产者端Broker端消费者端相关参数 K…...
【MT32F006】MT32F006之通信协议
本文最后修改时间:2025年01月09日 一、本节简介 本文介绍如何使用MT32F006写一个通信协议。 二、实验平台 库版本:V1.0.0 编译软件:MDK5.37 硬件平台:MT32F006开发板(主芯片MT32F006) 仿真器ÿ…...
CMake学习笔记(2)
1. 嵌套的CMake 如果项目很大,或者项目中有很多的源码目录,在通过CMake管理项目的时候如果只使用一个CMakeLists.txt,那么这个文件相对会比较复杂,有一种化繁为简的方式就是给每个源码目录都添加一个CMakeLists.txt文件ÿ…...
访客机的四个功能
访客机,也被称为访客自动登记安全管理系统或访客一体机,是现代安全管理中不可或缺的一部分。它通过整合计算机技术、射频识别技术、指纹生物识别、触摸屏手写技术、文字识别(OCR)技术、热敏打印技术、条码技术、数码摄像技术、自动…...
【Linux系统】—— vim 的使用
【Linux系统】—— vim 的使用 1 vim 的基本概念2 vim 的多模式3 命令模式下的命令集3.1 进入/退出其他模式3.2 光标移动命令集3.3 复制/剪切/粘贴/删除命令集3.4 撤销命令集3.5 查找命令集3.6 替换命令集3.7 进入与退出替换模式 4 批量化编译5 底行模式6 vim 小技巧7 vim简单配…...
华为C语言编程规范总结
1.头文件更改会导致所有直接或间接包含该头文件的的C文件重新编译,会增加大量编译工作量,延长编译时间,因此: 1.1 头文件里尽量少包含头文件 1.2 头文件应向稳定的方向包含 2.每一个.c文件应有一个同名.h文件,…...
深入学习 Python 量化编程
深入学习 Python 量化编程 第一章:Python 基础与量化编程环境搭建 1.1 安装必要的库 首先,你需要安装一些在量化编程中常用的 Python 库。可以通过以下命令安装这些库: pip install numpy pandas matplotlib yfinance backtrader scikit-…...
初识Java3
目录 一.面向对象与面向过程编程区别 二.类 1.类的定义 2.类一般格式 3.类的实例化具体对象 4.this的使用(习惯经常用) 5.this引用 三.对象 1.初始化对象方法 2.构造方法 四.封装 1.封装: 2.拓展“包” (1).包概念 (…...
uniapp 微信小程序内嵌h5实时通信
描述: 小程序webview内嵌的h5需要向小程序实时发送消息,有人说postMessage可以实现,所以试验一下,结果是实现不了实时,只能在特定时机后退、组件销毁、分享时小程序才能接收到信息(小程序为了安全等考虑做了…...
Blazor开发复杂信息管理系统的优势
随着现代企业信息管理需求的不断提升,开发高效、易维护、可扩展的系统变得尤为重要。在这个过程中,Blazor作为一种新兴的Web开发框架,因其独特的优势,逐渐成为开发复杂信息管理系统的首选技术之一。本文将结合Blazor在开发复杂信息…...
【微服务】面试题 5、分布式系统理论:CAP 与 BASE 详解
分布式系统理论:CAP 与 BASE 详解 一、CAP 定理 背景与定义:1998 年由加州大学科学家埃里克布鲁尔提出,分布式系统存在一致性(Consistency)、可用性(Availability)、分区容错性(Part…...
<论文>时序大模型如何应用于金融领域?
一、摘要 本文介绍2024年的论文《Financial Fine-tuning a Large Time Series Model》,论文探索了主流的时间序列大模型在金融领域的微调应用实践,为时序大模型的领域微调提供了参考。 译文: 大型模型在自然语言处理、图像生成以及近期的时间…...
Oracle 表分区简介
目录 一. 前置知识1.1 什么是表分区1.2 表分区的优势1.3 表分区的使用条件 二. 表分区的方法2.1 范围分区(Range Partitioning)2.2 列表分区(List Partitioning)2.3 哈希分区(Hash Partitioning)2.4 复合分…...
安卓硬件加速hwui
安卓硬件加速 本文基于安卓11。 从 Android 3.0 (API 级别 11) 开始,Android 2D 渲染管道支持硬件加速,这意味着在 View 的画布上执行的所有绘图操作都使用 GPU。由于启用硬件加速所需的资源增加,你的应用程序将消耗更多内存。 软件绘制&am…...
【Bluedroid】HFP连接流程源码分析(二)
接上一篇【Bluedroid】HFP连接流程源码分析(一)-CSDN博客分析。本篇主要围绕RFCOMM Connect 与 RFCOMM UA Frame 的处理流程来展开分析。 RFCOMM Connect RFCOMM(Radio Frequency Communication)作为蓝牙协议栈的关键部分&#…...
基于文件系统分布式锁原理
分布式锁:在一个公共的存储服务上打上一个标记,如Redis的setnx命令,是先到先得方式获得锁,ZooKeeper有点像下面的demo,比较大小的方式判决谁获得锁。 package com.ldj.mybatisflex.demo;import java.util.*; import java.util.co…...
java语法知识(二)
1. class文件可以直接拖动到idea中,显示源码。 2.idea快捷键: sout : System.out.println 输出内容.sout :---》 System.out.println(输出内容); psvm: public static void main() 格式化:ctrl altL 复制粘贴:ctrld 3.注释…...
基于Piquasso的光量子计算机的模拟与编程
一、引言 在科技飞速发展的当下,量子计算作为前沿领域,正以前所未有的态势蓬勃崛起。它凭借独特的量子力学原理,为解决诸多经典计算难以攻克的复杂问题提供了全新路径。从优化物流配送网络,以实现资源高效调配,到药物分子结构的精准模拟,加速新药研发进程;从金融风险的…...
导出文件,能够导出但是文件打不开
背景: 在项目开发中,对于列表的查询,而后会有导出功能,这里导出的是一个excell表格。实现了两种,1.导出的文件,命名是前端传输过去的;2.导出的文件,命名是根据后端返回的文件名获取的…...
【动手学电机驱动】STM32-FOC(4)STM32之UART 串口通信
STM32-FOC(1)STM32 电机控制的软件开发环境 STM32-FOC(2)STM32 导入和创建项目 STM32-FOC(3)STM32 三路互补 PWM 输出 STM32-FOC(4)STM32之UART 串口通信 STM32-FOC(6&am…...
RabbitMQ 高可用方案:原理、构建与运维全解析
文章目录 前言:1 集群方案的原理2 RabbitMQ高可用集群相关概念2.1 设计集群的目的2.2 集群配置方式2.3 节点类型 3 集群架构3.1 为什么使用集群3.2 集群的特点3.3 集群异常处理3.4 普通集群模式3.5 镜像集群模式 前言: 在实际生产中,RabbitM…...
Center Loss 和 ArcFace Loss 笔记
一、Center Loss 1. 定义 Center Loss 旨在最小化类内特征的离散程度,通过约束样本特征与其类别中心之间的距离,提高类内特征的聚合性。 2. 公式 对于样本 xi 和其类别yi,Center Loss 的公式为: xi: 当前样本的特征向量&…...
深度解读微软Speech服务:让语音识别走进现实
大家好,今天我们来探讨一个激动人心的技术话题:微软的语音识别服务如何为我们提供强大的语音识别解决方案,特别是在电话录音中识别出不同的说话人。 场景描绘 想象一下,你有一段电话录音,并需要将其中的多个说话人区分…...
第21篇 基于ARM A9处理器用汇编语言实现中断<三>
Q:怎样编写ARM A9处理器汇编语言代码配置按键端口产生中断? A:使用Intel Monitor Program创建中断程序时,Linker Section Presets下拉菜单中需选择Exceptions。主程序在.vectors代码段为ARM处理器设置异常向量表,在…...
专题 - STM32
基础 基础知识 STM所有产品线(列举型号): STM产品的3内核架构(列举ARM芯片架构): STM32的3开发方式: STM32的5开发工具和套件: 若要在电脑上直接硬件级调试STM32设备,则…...
极客说|Azure AI Agent Service 结合 AutoGen/Semantic Kernel 构建多智能体解决⽅案
作者:卢建晖 - 微软高级云技术布道师 「极客说」 是一档专注 AI 时代开发者分享的专栏,我们邀请来自微软以及技术社区专家,带来最前沿的技术干货与实践经验。在这里,您将看到深度教程、最佳实践和创新解决方案。关注「极客说」&am…...
【C++指南】模板 深度解析
💓 博客主页:倔强的石头的CSDN主页 📝Gitee主页:倔强的石头的gitee主页 ⏩ 文章专栏:《C指南》 期待您的关注 目录 1. 引言 2. 模板的基本概念 3. 函数模板 3.1 定义和语法 3.2 函数模板实例化 3.3 隐式实例化 …...
【traefik】forwadAuth中间件跨namespace请求的问题
前情提要 - fowardAuth鉴权中间件的使用: 【traefik】使用forwardAuth中间件做网关层的全局鉴权 1. 问题 我的 traefik-ingress-controller 所在 namespace: traefik 业务服务所在 namespace: apps 路由与 forwardAuth 中间件配置如下: # 路由 apiV…...
【25考研】西南交通大学软件工程复试攻略!
一、复试内容 复试对考生的既往学业情况、外语听说交流能力、专业素质和科研创新能力,以及综合素质和一贯表现等进行全面考查,主要考核内容包括思想政治素质和道德品质、外语听说能力、专业素质和能力,综合素质及能力。考核由上机考试和面试两部分组成&a…...
在 Safari 浏览器中,快速将页面恢复到 100% 缩放(也就是默认尺寸)Command (⌘) + 0 (零)
在 Safari 浏览器中,没有一个专门的快捷键可以将页面恢复到默认的缩放比例。 但是,你可以使用以下两种方法快速将页面恢复到 100% 缩放(也就是默认尺寸): 方法一:使用快捷键 (最常用) Command (⌘) 0 (零…...
linux的大内核锁与顺序锁
大内核锁 Linux大内核锁(Big Kernel Lock,BKL)是Linux内核中的一种锁机制,用于保护内核资源,以下是关于它的详细介绍: 概念与作用 大内核锁是一种全局的互斥锁,在同一时刻只允许一个进程访问…...
CVE-2025-22777 (CVSS 9.8):WordPress | GiveWP 插件的严重漏洞
漏洞描述 GiveWP 插件中发现了一个严重漏洞,该插件是 WordPress 最广泛使用的在线捐赠和筹款工具之一。该漏洞的编号为 CVE-2025-22777,CVSS 评分为 9.8,表明其严重性。 GiveWP 插件拥有超过 100,000 个活跃安装,为全球无数捐赠平…...
牛客周赛 Round 76题解
小红出题 思路:我们发现,每七天可以获得15元,那么我们可以对7取模,看能有多少7的倍数,然后剩下的就是看是否超过5,超过5就直接15,否则加上天数*3 #include<bits/stdc.h> using namespace…...
【ARM】MDK如何将变量存储到指定内存地址
1、 文档目标 通过MDK的工程配置,将指定的变量存储到指定的内存地址上。 2、 问题场景 在项目工程的开发过程中,对于flash要进行分区,需要规划出一个特定的内存区域来存储变量。 3、软硬件环境 1)、软件版本:MDK 5.…...
解决在arm架构下的欧拉操作系统mysql8.4.2源码安装
目标:在欧拉的22.03 (LTS-SP4)版本操作系统,cpu的架构为ARM,源码安装mysql-8.4.2。 1.查看操作系统 # cat /etc/os-release NAME"openEuler" VERSION"22.03 (LTS-SP4)"# uname -i aarch642.mysql下载地址 mysql的下载…...
SpringAop
SpringAop aop定义核心概念aop基础实现执行流程 aop进阶通知类型切入点表达式的抽取通知的执行顺序切入点表达式execution方式实现annotation注解方式实现示例 笔记链接 aop定义 AOP:Aspect Oriented Programming(面向切面编程、面向方面编程)…...
C++内存泄露排查
内存泄漏是指程序动态分配的内存未能及时释放,导致系统内存逐渐耗尽,最终可能造成程序崩溃或性能下降。在C中,内存泄漏通常发生在使用new或malloc等分配内存的操作时,但没有正确地使用delete或free来释放这块内存。 在日常开发过程…...
Cesium小知识:pointPrimitive collection 详解
Cesium.PointPrimitiveCollection 是 Cesium 中用于高效管理和渲染大量点(points)的一个类。它允许你创建和管理大量的 PointPrimitive 实例,这些实例可以用来表示地理空间中的点数据,如传感器位置、车辆位置、兴趣点等。与直接使用 Cesium.Entity 相比,PointPrimitiveCol…...
从 Conda 到 Pip-tools:Python 依赖管理全景探索20250113
从 Conda 到 Pip-tools:Python 依赖管理全景探索 引言 在 Python 开发中,依赖管理是一个"常见但复杂"的问题:一次简单的版本冲突可能让团队调试数小时;一次不受控的依赖升级可能让生产环境瘫痪。随着项目规模的增加和…...
浅谈云计算01 | 云计算服务的特点
在当今数字化时代,云计算作为一种强大的技术解决方案,正逐渐改变着企业和个人对信息技术的使用方式。本文将详细探讨云计算的五个主要特点,包括按需自助服务、广泛的网络接入、资源池化、快速弹性伸缩以及可计量服务。 一、按需自助服务 云…...
2025年,华为认证HCIA、HCIP、HCIE 该如何选择?
眼看都到 2025 年啦,华为认证还吃香不? 把这问题摆在每个网络工程师跟前,答案可没那么容易说清楚。 到底考不考它值当不值当,重点在于您自己的职业规划,还有对行业走向的领会。 2025 年华为认证仍然值得一考&#…...
使用Selenium进行网页自动化测试
在使用Selenium进行网页自动化测试时,获取网络请求数据(即network数据)并不直接由Selenium库提供。Selenium主要用于与网页内容进行交互(如点击、输入文本、获取页面元素等),但它本身不拦截或记录网络请求。…...
Linux 下 mtrace 的详细介绍
在 Linux 系统中,内存管理是操作系统的一项重要任务,而内存泄漏(Memory Leak)是开发过程中常见且棘手的问题之一。为了帮助开发者追踪和调试内存泄漏问题,mtrace 提供了一种有效的方式来检测和分析内存的分配与释放情况…...
【DB-GPT】开启数据库交互新篇章的技术探索与实践
一、引言:AI原生数据应用开发的挑战与机遇 在数字化转型的浪潮中,企业对于智能化应用的需求日益增长。然而,传统的数据应用开发方式面临着诸多挑战,如技术栈复杂、开发周期长、成本高昂、难以维护等。这些问题限制了智能化应用的…...