SuperAPI AI 工具集

karma-skill

测试与质量

查看项目

更新于 10-15 14:31

技能介绍

用途

karma-skill 用于生成 Karma 测试运行器的配置,面向基于浏览器的 JavaScript 测试。它可与 Jasmine、Mocha 或 QUnit 配合使用,当用户提到 "Karma" 时可调用该技能。

主要能力

该技能提供 Karma 的核心配置模式,包括 karma.conf.js 的完整示例,涵盖以下配置项:

  • basePath、frameworks、files:基础路径、测试框架与测试文件匹配
  • preprocessors:预处理器,示例中对 src 下的 JS 文件启用 coverage
  • reporters 与 coverageReporter:报告器与覆盖率报告输出(示例为 html,目录 coverage/)
  • port、colors、logLevel、autoWatch、browsers、singleRun、concurrency:运行器基础行为
  • customLaunchers:自定义启动器,示例中配置了 LambdaTest 云浏览器(ChromeLT),包含 hostname、port、browserName、version、name、tunnel、user、accessKey 等字段,其中 user 与 accessKey 从环境变量 LT_USERNAME、LT_ACCESS_KEY 读取

同时提供 Jasmine 框架的测试写法示例,例如对 StringUtils.capitalize 的断言测试,覆盖首字母大写与空字符串场景。

针对 Angular 集成,给出 karma.conf.js 中 frameworks 与 plugins 的配置方式,涉及 karma-jasmine、karma-chrome-launcher、karma-coverage 以及 @angular-devkit/build-angular 的 karma 插件。

使用方式

资料中提供的命令如下:

  • 安装:npm install karma karma-jasmine karma-chrome-launcher karma-coverage --save-dev
  • 运行:npx karma start 或 npx karma start --single-run
  • 初始化:npx karma init karma.conf.js

适用场景

适用于需要为浏览器端 JavaScript 项目配置 Karma 测试运行器的场景,尤其是使用 Jasmine、Mocha 或 QUnit 的项目,以及 Angular 项目的测试配置。也适用于需要接入 LambdaTest 云浏览器进行跨浏览器测试,或需要在 CI/CD 中集成测试与覆盖率报告的场景。

限制

资料中未提供该技能的具体收费、价格、平台支持范围、实际效果或完整使用步骤。关于 playbook.md 中列出的生产级模式(如生产配置、组件测试、HTTP 服务测试、指令与管道测试、RxJS 与异步模式、路由与 NgRx 测试、LambdaTest 集成、CI/CD 集成、调试表、最佳实践等),资料仅给出章节标题与内容概述,未展开具体细节。