仅限内部分享:Open-AutoGLM实现零代码UI测试的4步秘诀

第一章:Open-AutoGLM可用于自动化ui测试吗

Open-AutoGLM 是一个基于大语言模型的自动化任务生成框架,其核心能力在于理解自然语言指令并转化为可执行的操作逻辑。虽然该框架本身并非专为UI测试设计,但凭借其强大的语义解析与脚本生成能力,可在一定条件下支持自动化UI测试任务。

功能适配性分析

  • 支持将自然语言测试用例转换为Selenium或Playwright脚本
  • 能够识别常见UI元素选择器(如XPath、CSS选择器)
  • 可生成跨平台Web和移动端的基本交互流程

典型使用流程

  1. 输入测试需求:“登录页面输入错误密码,验证提示信息”
  2. Open-AutoGLM生成对应Python+Selenium代码
  3. 输出结果经人工校验后集成至CI/CD流水线

代码示例


# 使用Open-AutoGLM生成的自动化测试片段
from selenium import webdriver

driver = webdriver.Chrome()
driver.get("https://example.com/login")

# 输入用户名和错误密码
username_input = driver.find_element_by_id("username")
password_input = driver.find_element_by_id("password")
username_input.send_keys("test_user")
password_input.send_keys("wrong_pass123")

# 点击登录并验证错误提示
login_button = driver.find_element_by_id("login-btn")
login_button.click()

error_tip = driver.find_element_by_class_name("error-message")
assert "密码错误" in error_tip.text  # 验证提示信息正确

适用场景对比

测试类型是否推荐说明
探索性UI测试✅ 推荐利用自然语言快速生成测试路径
稳定回归测试⚠️ 谨慎使用需额外验证生成脚本的稳定性
高精度性能测试❌ 不推荐非该模型设计目标
graph TD A[自然语言测试需求] --> B{Open-AutoGLM} B --> C[生成测试脚本] C --> D[本地执行验证] D --> E[集成至测试框架]

第二章:Open-AutoGLM在UI自动化测试中的核心技术解析

2.1 Open-AutoGLM的架构设计与运行机制

Open-AutoGLM采用分层解耦架构,核心由任务解析引擎、模型调度器与反馈优化模块组成。系统接收自然语言指令后,首先由解析引擎生成结构化任务图。
组件交互流程

用户输入任务解析模型选择执行与反馈

动态调度策略
  • 基于任务复杂度自动匹配轻量或大型GLM
  • 支持多模型并行推理与结果融合
  • 实时监控响应延迟与准确性指标

# 示例:模型调度核心逻辑
def select_model(task):
    if task.complexity < 0.5:
        return "Mini-GLM-v2"
    else:
        return "AutoGLM-Pro"
该函数根据任务复杂度阈值动态选择模型实例,参数complexity由解析引擎量化输出,确保资源高效利用。

2.2 基于自然语言理解的测试用例生成原理

语义解析与行为映射
现代测试用例生成依赖自然语言理解(NLU)技术,将需求文本转化为可执行的逻辑结构。系统首先对输入文本进行分词、实体识别和意图分类,提取关键动词与操作对象。
  • 用户输入:“登录系统后查看订单列表”
  • NLU输出:动作=登录,目标=系统;动作=查看,目标=订单列表
规则驱动的用例构造
通过预定义模板匹配语义单元,自动生成测试步骤。例如:

// 模板示例:当检测到“登录”意图时插入该流程
function generateLoginStep(credentials) {
  return {
    action: "POST /api/login",
    payload: { username: credentials.user, password: credentials.pass },
    expected: 200
  };
}
该函数封装登录请求逻辑,参数credentials来自上下文提取的测试数据,返回标准HTTP断言结构,供后续执行引擎调用。

2.3 UI元素识别与定位策略的技术实现

在自动化测试中,精准识别和定位UI元素是核心前提。现代框架普遍支持多种定位方式,包括ID、XPath、CSS选择器、类名等,适应不同层级的页面结构匹配需求。
常用定位策略对比
  • ID定位:唯一性强,性能最优,适用于静态ID元素。
  • XPath:灵活性高,可遍历DOM树,适合动态或复杂结构。
  • CSS选择器:语法简洁,浏览器原生支持,执行效率高。
基于XPath的动态元素定位示例

WebElement element = driver.findElement(By.xpath("//input[@placeholder='请输入用户名']"));
该代码通过XPath查找具有特定占位符属性的输入框。其优势在于不依赖ID或name属性,适用于前端框架动态生成的DOM结构。参数@placeholder作为语义化标识,提升了脚本可读性与维护性。
定位策略选择建议
场景推荐策略
静态元素ID 或 Name
嵌套结构XPath
样式驱动CSS选择器

2.4 多平台兼容性支持与适配实践

在构建跨平台应用时,确保代码在不同操作系统、设备分辨率和运行环境中一致运行至关重要。通过抽象底层差异,统一接口设计,可大幅提升维护效率与部署灵活性。
响应式布局适配策略
使用弹性布局结合媒体查询,动态调整界面结构:

.container {
  display: flex;
  flex-wrap: wrap;
}
@media (max-width: 768px) {
  .container {
    flex-direction: column;
  }
}
上述样式在移动端自动切换为垂直排列,保障小屏可读性。flex-wrap 允许子元素换行,避免溢出;媒体查询精准捕获设备断点。
平台特性检测与降级方案
  • 通过 User-Agent 或特性探测识别运行环境
  • 对不支持的 API 提供模拟实现或提示引导
  • 资源加载优先使用渐进增强模式

2.5 测试执行流程的自动化编排能力

现代测试体系中,自动化编排能力是提升测试效率与稳定性的核心。通过统一调度测试任务、环境准备、用例执行与结果上报,实现端到端流程的无缝衔接。
基于工作流引擎的任务调度
采用如Airflow或自研编排引擎,可定义清晰的执行依赖关系。以下为YAML格式的工作流片段示例:

tasks:
  - name: setup_env
    image: tester-env:latest
    command: ./setup.sh
  - name: run_tests
    depends_on: setup_env
    command: pytest --alluredir=./results
该配置确保环境初始化完成后才启动测试任务,depends_on 明确了执行顺序,提升流程可靠性。
关键执行阶段的可视化编排
阶段操作
1. 触发CI/CD 事件或定时触发
2. 准备拉取镜像、部署测试服务
3. 执行并行运行测试套件
4. 上报生成报告并通知

第三章:零代码测试模式的落地路径

3.1 从需求到测试指令的语义转换方法

在自动化测试体系中,将自然语言描述的需求精准转化为可执行的测试指令是关键环节。该过程依赖于语义解析模型对需求文本进行意图识别与实体抽取。
语义解析流程
  • 需求文本预处理:清洗并分词,提取关键动词与名词短语
  • 意图分类:使用预训练模型判断操作类型(如“点击”、“输入”)
  • 参数绑定:将实体映射到UI元素选择器或测试数据
代码示例:指令生成逻辑

def generate_test_command(intent, entity):
    # intent: 操作意图,如"input_text"
    # entity: 包含字段 value 和 locator
    if intent == "input_text":
        return f'element = driver.find_element({entity["locator"]})\nelement.send_keys("{entity["value"]}")'
该函数接收解析后的语义结构,动态生成Selenium可执行代码,实现从自然语言到脚本的映射。

3.2 非技术人员如何构建有效测试输入

理解测试输入的本质
有效的测试输入并非仅限于技术参数,而是对系统行为的合理试探。非技术人员应从用户视角出发,模拟真实操作场景,如填写表单、提交订单等。
使用边界值和等价类划分
即使不具备编程背景,也可依据业务规则设定典型输入。例如,在输入年龄字段时:
  • 等价类:正常范围(18-60)、未成年(<18)、超龄(>60)
  • 边界值:17、18、60、61
借助模板生成结构化数据
可使用预定义的JSON模板辅助构造请求体:
{
  "username": "test_user",
  "age": 25,
  "email": "user@example.com"
}
该结构清晰表达了字段含义与格式要求,便于协作团队统一理解。其中 age 使用典型值,覆盖正常业务逻辑路径。
可视化输入设计
步骤动作
1识别功能点
2列出输入字段
3定义有效/无效样本

3.3 可视化反馈与结果验证的最佳实践

实时可视化监控
在模型训练过程中,实时可视化能显著提升调试效率。使用 TensorBoard 或 Weights & Biases 可追踪损失、准确率等关键指标。

import wandb
wandb.init(project="ml-training")
wandb.log({"loss": loss, "accuracy": acc})
该代码片段将训练指标上传至 W&B 仪表板。`project` 参数指定项目名称,`log()` 方法按步长记录标量值,便于趋势分析。
验证结果的结构化比对
通过表格对比不同实验版本的输出结果,可快速识别性能差异。
实验编号准确率延迟(ms)备注
EXP-0192.3%45基础模型
EXP-0294.1%67增加数据增强
  • 确保每次实验仅变更一个变量以隔离影响
  • 图像类任务建议叠加预测热力图与真实标签进行视觉对齐

第四章:四步秘诀实战拆解

4.1 第一步:环境准备与系统接入配置

在构建稳定的系统集成环境前,需完成基础依赖的部署与网络策略配置。首先确保目标主机已安装运行时环境并开放必要端口。
依赖组件清单
  • Go 1.20+ 运行时
  • Docker 20.10+
  • Redis 6.2(用于会话缓存)
  • MySQL 8.0(元数据存储)
网络配置示例
// 示例:gRPC 服务监听配置
listener, err := net.Listen("tcp", ":50051")
if err != nil {
    log.Fatalf("端口监听失败: %v", err)
}
// 使用 TLS 加密提升传输安全性
creds, _ := credentials.NewServerTLSFromFile("server.crt", "server.key")
s := grpc.NewServer(grpc.Creds(creds))
上述代码启动 gRPC 服务并启用 HTTPS 加密,:50051 为默认通信端口,需在防火墙中放行。
系统兼容性对照表
操作系统架构支持状态
Linux (Ubuntu 20.04+)amd64✅ 支持
macOS Monterey+arm64✅ 支持
Windows 10amd64⚠️ 实验性支持

4.2 第二步:自然语言测试脚本编写技巧

编写自然语言测试脚本的关键在于将业务需求转化为清晰、可执行的自动化指令。语句应贴近日常表达,同时具备明确的操作动词和预期结果。
使用行为驱动开发(BDD)语法
采用 Given-When-Then 结构提升脚本可读性:

Given 用户已登录系统
When 提交订单金额为 99 元
Then 应收到“支付成功”提示
该结构逻辑清晰:Given 描述前置条件,When 定义触发动作,Then 验证输出结果。这种模式降低非技术人员的理解门槛,促进团队协作。
避免模糊表述
  • 避免使用“快速点击”“大概正确”等主观描述
  • 应明确如“在 2 秒内连续点击按钮 3 次”
精确描述确保脚本在不同环境下的稳定执行,是构建可靠自动化测试的基础。

4.3 第三步:自动化执行与异常响应处理

在自动化流程中,任务的持续执行与异常的及时响应是保障系统稳定的核心环节。通过调度器定期触发核心逻辑,并结合监控机制捕获运行时状态,系统能够实现无人值守的高效运作。
异常捕获与重试策略
采用结构化错误处理机制,对关键路径进行包裹,确保异常可被捕获并分类处理:

func executeWithRetry(task Task, maxRetries int) error {
    for i := 0; i <= maxRetries; i++ {
        err := task.Run()
        if err == nil {
            return nil
        }
        if !isRetryable(err) {
            return err
        }
        time.Sleep(backoff(i))
    }
    return fmt.Errorf("task failed after %d retries", maxRetries)
}
该函数实现了带重试上限的执行封装。参数 `maxRetries` 控制最大尝试次数,`isRetryable()` 判断错误是否可恢复,`backoff()` 实现指数退避,避免频繁重试加剧系统负载。
告警通知机制
当重试耗尽或发生严重故障时,系统自动触发告警:
  • 记录结构化日志至集中式平台
  • 通过 webhook 推送消息至企业微信或 Slack
  • 标记任务状态为“失败”,供后续人工介入

4.4 第四步:测试报告生成与持续集成对接

在自动化测试执行完成后,生成结构化测试报告是验证质量的关键环节。通过集成测试框架如 PyTest 或 JUnit,可自动生成 XML 或 HTML 格式的测试结果。
报告生成配置示例

pytest tests/ --junitxml=report.xml --html=report.html --self-contained-html
该命令同时输出 JUnit 兼容的 XML 报告和可视化 HTML 报告,便于 CI 系统解析与人工查阅。`--junitxml` 用于 Jenkins 等工具识别测试状态,`--html` 生成带样式和脚本的独立页面。
与 CI 流程集成
  • Jenkins 使用 JUnit Plugin 解析 report.xml,展示失败用例与趋势图
  • GitLab CI 可通过 artifacts: 保留 report.html,供后续下载查看
  • 结合 Slack 或企业微信 Webhook,自动推送测试结果通知
通过将报告上传至 CI 流程,实现每次构建后自动归档与追溯,提升交付透明度。

第五章:未来展望与技术边界探讨

量子计算与经典系统的融合路径
当前量子计算仍处于NISQ(含噪声中等规模量子)阶段,但已出现与经典系统协同的实用案例。例如,IBM Quantum Experience 提供 REST API 供传统应用调用量子线路:

import requests
headers = {"Authorization": "Bearer YOUR_API_TOKEN"}
payload = {
    "backend": "ibmq_qasm_simulator",
    "qobj": quantum_circuit_qobj
}
response = requests.post("https://api.quantum-computing.ibm.com/run", json=payload, headers=headers)
AI驱动的自愈网络架构
现代云平台开始部署基于强化学习的网络自愈机制。Google SRE 团队在Borg系统中实现自动故障迁移策略,其决策流程如下:
  1. 监控组件检测节点延迟异常
  2. AI模型评估服务拓扑依赖关系
  3. 生成迁移方案并模拟影响范围
  4. 在维护窗口执行热迁移
边缘智能的算力分配挑战
随着终端AI推理需求增长,异构设备间的负载均衡成为关键。以下为典型边缘集群资源分布:
设备类型算力 (TOPS)延迟 (ms)适用场景
Jetson AGX3215自动驾驶感知
Raspberry Pi + NPU445工业传感器推理
图示:联邦学习中的梯度聚合流程
设备A → 梯度加密 → 中继节点 → 同态解密 → 全局模型更新
设备B → 梯度签名 → 聚合服务器 → 差分隐私注入 → 版本同步
代码下载链接: https://pan.quark.cn/s/a175d1ef418b 标题部分中的"新建文件夹 (2).zip"暗示这是一个采用ZIP编码方式的压缩文档,这种格式通常用于将多个关联的文件或目录整合进一个压缩单元中。在信息技术领域,ZIP编码格式是一种广泛应用的标准,它支持将多个数据单元压缩成一个独立的压缩文件,从而提升文件传输的便捷性、存储空间的利用效率以及管理的便捷度。ZIP格式的压缩文件可以通过多种解压缩工具进行访问,例如WinRAR软件、7-Zip应用程序或操作系统自带的压缩解压功能。 描述文本里的"shop"字样或许指向这个压缩文档与商业店铺、电子商务平台或网络销售系统存在关联。在Java编程范畴内,这有可能是一个范例项目,用以说明构建电子商务平台相关功能的实现方法,涵盖商品维护、购物车功能以及订单处理等模块。Java语言因其跨平台兼容性、系统稳定性以及完备的库资源支持,经常被选作开发大型企业级应用的技术栈,尤其是电子商务系统。 依据标签"java"的指示,可以推断压缩包内部可能包含了采用Java编程语言编写的源代码片段、系统配置文档、数据库操作脚本及其他辅助性资源。Java程序员一般借助集成开发环境(IDE)如Eclipse、IntelliJ IDEA或NetBeans进行Java代码的编写、编译及执行操作。这些开发工具能够高效地支持ZIP文件中项目结构的导入与管理。 文件命名列表仅列出一个条目"新建文件夹 (2)",这或许意味着压缩文档中包含一个同名的文件夹,该文件夹内可能收纳了一系列子文件及子目录。在实际的Java开发任务中,类似的结构可能包含src目录(存放程序源代码)、lib目录(存放项目依赖的jar库文件)、resou...
内容概要:本文系统研究了基于Kantorovich距离的SBR(Sequential Benefit Replacement)算法在电力系统场景削减中的应用,旨在从大量原始不确定性场景中筛选出最具代表性的典型场景,以降低随机优化问题的计算复杂度。该方法通过引入Kantorovich距离(也称Wasserstein距离)精确量化场景之间的差异性,并结合SBR算法实现场景的逐合并与削减,有效保留原始场景的概率分布特征。文中提供了完整的Matlab代码实现,便于用户复现算法,特别适用于处理风电出力、负荷波动等具有强随机性和不确定性的多场景优化问题,如微电网调度、电氢耦合系统运行等。; 适合人群:具备一定概率统计、优化理论基础和Matlab编程能力,从事电力系统、新能源并网、能源互联网、随机规划及综合能源系统优化等领域研究的研究生、科研人员及工程技术人员。; 使用场景及目标:①应用于高比例可再生能源接入下的电力系统随机优化调度、微电网能量管理、多能互补系统等需要进行多场景分析与决策的建模场景;②帮助研究人员深入掌握Kantorovich距离的数学原理与计算方法,以及SBR算法的迭代逻辑与实现技巧,提升对不确定性建模、场景生成与削减技术的理解与应用能力; 阅读建议:建议读者结合提供的Matlab代码,重点理解距离矩阵的构建、场景权重的更新规则以及场景合并的判定逻辑,通过调试代码并代入实际风电或负荷数据进行案例测试,以深刻领会算法的核心思想与工程价值。
内容概要:本文围绕电力系统短期负荷预测问题,深入研究了基于极限学习机(ELM)及其智能优化算法的应用方法,提出并实现了白鲸优化算法(BWO)和鹭鹰优化算法(IBOA)对ELM模型的关键参数进行寻优的技术路径。通过Matlab编程实现,优化后的模型有效提升了预测精度,降低了原始ELM因随机初始化带来的不稳定性和误差波动,增强了模型在面对电力负荷不确定性变化时的泛化能力和鲁棒性。研究系统阐述了ELM的基本原理、两种新型群智能优化算法的搜索机制及其在解决非线性参数优化问题上的优势,并通过实验对比验证了优化模型在均方根误差(RMSE)、平均绝对百分比误差(MAPE)等指标上的显著优越性,为电力系统负荷预测提供了高效可靠的解决方案。; 适合人群:具备电力系统分析、人工智能算法理论基础及Matlab编程能力的高校研究生、科研机构研究人员以及电力公司从事负荷预测、电网调度与能源管理的工程技术人员。; 使用场景及目标:①应用于电网调度中心的短期负荷预测业务,提高预测准确性,保障电力供需平衡;②为智能优化算法在电力工程领域的落地应用提供可复现的技术范例;③支撑电力市场出清、发电计划制定、储能系统配置及需求侧响应等关键决策环节; 阅读建议:建议读者结合提供的Matlab代码进行实践操作,重点理解ELM网络结构搭建、适应度函数设计、优化算法迭代流程及预测结果后处理等关键骤,通过调整数据集和参数设置,深入掌握模型调优技巧,并尝试将该方法迁移至风电、光伏功率预测等相似时序预测任务中。
内容概要:本文档聚焦于“经济学期刊论文复现:数字化转型能促进企业的高质量发展吗”这一核心命题,系统整合了大量基于Matlab和Python的科研代码资源,涵盖微电网优化调度、电力系统分析、机器学习预测模型、路径规划算法、信号与图像处理、通信技术优化等多个工程技术领域。文档的核心在于通过复现高水平学术论文中的量化模型与实证方法,帮助研究人员深入理解数字化转型对企业高质量发展的理论机制与实际影响,并提供可操作的技术路径进行仿真验证与拓展研究。内容不仅包括数据驱动的建模、优化算法设计与仿真分析,还涉及多学科交叉的应用场景,如能源系统优化、智能制造、智能交通等,旨在为科研工作者提供一套完整的从理论到代码实现的支持体系。; 适合人群:具备一定编程基础和经济学或工科背景的研究生、科研人员及高校教师,尤其适合从事数字化转型、能源经济、企业管理、电力系统优化、智能算法应用等相关领域研究的专业人士。; 使用场景及目标:①用于复现经济学领域关于数字化转型与企业高质量发展的实证研究模型;②支撑科研论文撰写、课题申报与仿真验证工作;③辅助掌握Matlab/Python在经济与工程交叉领域的建模方法、优化技术和数据分析能力,提升科研效率与创新能力。; 阅读建议:建议结合文中提供的代码与网盘资料同实践操作,优先选择与自身研究方向契合的内容深入学习,注重模型构建逻辑、参数设置与优化过程的理解,同时可关注“荔枝科研社”公众号获取配套讲解、更新资源及技术交流支持。
下载代码方式:https://pan.quark.cn/s/746a98442a86 《数据库课程设计:教材征订管理系统》 教材征订管理系统是一种针对教学管理而开发的信息系统,其目的是提升学校教材征订工作的效率和准确性。该系统的构建过程包含后台数据库的构建和前端应用程序的研制,非常注重数据的一致性、完整性以及较高的安全性。系统不仅能够处理多价格书籍的征订、采购和发行,还支持在货物到达之前更换书目,以及进行大量数据录入和书目检索等操作。 系统的开发选用SQL Server 2000作为数据库平台,PowerBuilder 9.0作为前端开发工具,而数据源则选用了ACCESS 2000。ODBC(开放式数据库连接)用于与数据源建立连接,SQL结构化查询语言则用于实施查询任务。系统的核心关键词有教材征订、面向对象、库存查询和PB9.0,这表明系统设计采用了面向对象的编程理念,并非常重视库存的即时查询。 前言部分提到,由于学生数量的增长和教材种类的多样化,传统的教材征订管理模式已经难以适应,因此迫切需要建立一个与选课制度相匹配的教材征订管理系统。该系统能够自动化处理教材收费和领取流程,包含四个主要的功能模块:教材的入库与出库管理、学生书费管理、系统管理以及综合查询。 系统设计之初需要深入理解相关问题。教材征订管理系统必须具备登录、教材信息管理等功能,支持基础信息的录入、修改和查询,以及复杂的统计分析。涉及的数据信息涵盖教材征订、库存、购买和收款等详细记录。 需求分析是数据库设计的关键环节,包括数据流图和数据字典的构建。数据流图展示了教材从征订到发放的整个流程,数据字典则详细说明了各个数据项的特征。比如,教材编号由七位数字组成,教材管理表单包含了征订号、书名、出版社、作...
标题基于Springboot+Vue的景区推荐系统设计与实现AI更换标题第1章引言介绍景区推荐系统的研究背景、意义、国内外研究现状、论文方法及创新点。1.1研究背景与意义阐述景区推荐系统对旅游业发展的重要性及研究价值。1.2国内外研究现状分析国内外景区推荐系统的研究进展及存在的不足。1.3研究方法及创新点介绍本文的研究方法、技术路线及主要创新点。第2章相关理论总结景区推荐系统相关的理论基础和技术。2.1推荐系统基本理论阐述推荐系统的基本概念、分类及工作原理。2.2Springboot框架技术介绍Springboot框架的特点、优势及其在系统中的应用。2.3Vue前端框架技术介绍Vue框架的特点、优势及其在系统中的应用。2.4数据挖掘与机器学习算法简述数据挖掘与机器学习算法在推荐系统中的应用。第3章系统需求分析与设计详细描述系统的需求分析、架构设计及数据库设计。3.1系统需求分析分析系统的功能需求、性能需求及用户需求。3.2系统架构设计设计系统的整体架构,包括前端、后端及数据库等。3.3数据库设计设计系统的数据库结构,包括表结构、字段及关系等。第4章系统实现测试介绍系统的实现过程、关键技术及测试方法。4.1系统实现过程详细介绍系统的开发环境、开发工具及实现骤。4.2关键技术实现阐述系统实现中的关键技术,如推荐算法、前后端交互等。4.3系统测试方法介绍系统的测试方法、测试用例及测试结果分析。第5章系统优化与改进分析系统存在的问题,提出优化与改进方案。5.1系统性能优化针对系统性能瓶颈,提出优化方案,如缓存技术、负载均衡等。5.2推荐算法改进根据用户反馈和数据分析,改进推荐算法,提高推荐准确性。5.3用户体验提升优化系统界面设计,提升用户体验,如增加个性化设置、简化操作流程等。第6章结论与展望总结本文的研究成果,展望未来的研究方向。6.1研究结论概括本文的主要研究成果,包括系
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值