Launchable 使用介绍:功能、价格与上手指南
Launchable 是一款基于 AI 的预测性测试选择工具,通过机器学习分析历史测试数据,只运行与代码变更相关的测试,从而显著缩短 CI/CD 反馈时间。本文介绍其核心功能、价格方案,并提供从注册到集成的上手指南。
在持续集成与持续交付(CI/CD)流程中,测试环节常常成为瓶颈。全量测试耗时过长,而跳过测试又可能遗漏缺陷。Launchable 作为一款 AI 驱动的预测性测试选择工具,旨在解决这一矛盾。它通过分析代码变更与历史测试结果,智能挑选出最可能受影响的测试用例,帮助团队在不牺牲质量的前提下大幅缩短反馈周期。
本文将详细介绍 Launchable 的核心功能、定价策略,并提供一份可执行的上手指南,适合 DevOps 工程师、测试负责人及 AI 工具爱好者阅读。
一、Launchable 是什么?
Launchable 是一款面向开发团队的 预测性测试选择(Predictive Test Selection) 平台。它利用机器学习模型,结合代码提交差异、测试历史通过率与执行时长等数据,动态决定每次构建需要运行哪些测试。
其核心价值在于:
- 加速 CI/CD:只运行相关测试,减少 50%–80% 的测试时间。
- 降低成本:减少云测试资源消耗,节省 CI 分钟数。
- 保持质量:通过智能回退和置信度机制,避免漏测关键路径。
- 无缝集成:支持主流 CI 工具与测试框架,无需重写测试代码。
二、核心功能详解
1. 预测性测试选择
Launchable 会为每次代码提交生成一个“测试子集”。模型基于以下信号进行判断:
- 变更文件与测试用例的历史关联度
- 测试的失败频率与执行时长
- 代码覆盖率映射
- 最近提交的测试结果
你可以设置置信度阈值,例如“只运行覆盖变更代码的测试”或“运行所有曾经失败过的测试”。
2. 测试会话与洞察
每次 CI 运行都会在 Launchable 中形成一个“测试会话”。你可以查看:
- 实际运行的测试数量与总测试数量对比
- 节省的时间与 CI 成本估算
- 漏测风险提示(如有)
- 测试执行趋势与不稳定测试列表
3. 智能测试分组
Launchable 支持将测试按历史执行时间均衡分组,实现并行 CI 节点负载均衡。这能避免某个节点因运行慢测试而拖累整体流水线。
4. 与 CI/CD 工具集成
官方提供与以下工具的深度集成:
- Jenkins
- GitHub Actions
- GitLab CI
- CircleCI
- Buildkite
- Azure Pipelines
同时支持 JUnit、pytest、Jest、RSpec、Go test 等测试框架。
5. 安全与合规
Launchable 采用 SOC 2 Type II 认证,支持数据加密传输与存储。对于敏感项目,可以选择不上传代码内容,仅上传测试元数据。
三、价格方案
Launchable 采用订阅制,主要按“每月测试会话数”与“团队规模”计费。以下是截至 2025 年的公开价格层级(具体以官网为准):
| 方案 | 价格 | 适用对象 | 关键限制 |
|---|---|---|---|
| Free | 免费 | 开源项目、小型团队 | 每月 1,000 次测试会话,社区支持 |
| Team | $49/月起 | 成长型团队 | 每月 10,000 次会话,邮件支持 |
| Business | $199/月起 | 中大型企业 | 无限会话,SSO,优先支持 |
| Enterprise | 定制 | 大型组织 | 私有部署,SLA,专属客户成功 |
注意:Launchable 对开源项目提供免费无限会话,只需在官网申请。
如果你的团队 CI 分钟数成本较高,通常使用 Launchable 后节省的云资源费用即可覆盖订阅成本。
四、上手指南:从注册到首次预测
以下步骤假设你使用 GitHub Actions 与 pytest。
步骤 1:注册并创建组织
访问 Launchable 官网,使用 GitHub 或邮箱注册。创建一个组织(Organization),并记录下你的 API Key。
步骤 2:安装 CLI
在本地或 CI 环境中安装 Launchable CLI:
pip install launchable
然后配置 API Key:
launchable configure --api-key YOUR_API_KEY
步骤 3:记录一次完整测试会话
首次使用时,需要让 Launchable 学习你的测试全貌。在 CI 中运行一次全量测试,并记录会话:
launchable record session --build your-build-id
pytest --junitxml=results.xml
launchable record tests --session your-build-id pytest results.xml
步骤 4:启用预测性测试选择
在下一次构建中,使用 launchable subset 命令获取推荐测试子集:
launchable subset --target 30% --session your-build-id pytest > subset.txt
pytest $(cat subset.txt)
--target 30% 表示只运行约 30% 的测试。你也可以用 --confidence 参数控制漏测风险。
步骤 5:查看洞察报告
登录 Launchable 仪表盘,查看每次构建的节省时间、运行测试比例以及潜在风险提示。根据报告调整置信度阈值。
步骤 6:持续优化
- 定期运行全量测试(如每晚一次),让模型保持最新。
- 标记不稳定测试,避免其影响预测准确性。
- 结合测试分组功能,进一步优化并行效率。
五、常见问题
Q1:Launchable 会漏掉关键缺陷吗?
任何预测性工具都无法保证 100% 覆盖。Launchable 提供置信度控制与回退机制,建议对关键路径保留全量测试或设置较高的置信度。
Q2:需要修改测试代码吗?
不需要。你只需在 CI 脚本中增加 CLI 调用,测试代码本身无需改动。
Q3:支持私有化部署吗?
Enterprise 方案支持私有化部署,适合对数据安全要求极高的团队。
六、结论
Launchable 通过 AI 预测性测试选择,为 CI/CD 流程提供了可量化的加速方案。它适合测试套件庞大、CI 反馈缓慢的团队。你可以从免费方案开始,先用全量测试建立基线,再逐步启用子集运行。如果你的团队正在为漫长的测试等待而苦恼,Launchable 值得一试。
行动建议:注册免费账号,选择一个非关键项目进行为期两周的试点,记录测试时间与缺陷检出率的变化,再决定是否推广到核心项目。