Answers:
Karma是浏览器测试运行程序。
这个想法是浏览器本身没有加载测试文件,运行它们和报告结果的概念。业力所做的(大致)是:
看每个部分:
(1)这些文件将是您实际的js文件;您将告诉业力如何装载它们。如果使用requirejs,则有一个业力插件,并且需要一些配置。
(2)那些测试可以用各种Javascript测试框架(Jasmine,QUnit,Mocha)编写;这是在浏览器中运行的JS代码。
(3)每个测试框架的自定义网页会有所不同;这就是为什么业力具有适用于不同框架的插件的原因。
(4)Karma可以在许多浏览器(FF,Chrome或PhantomJs等无头浏览器)中启动页面。
(5)向业力报告仍然是依赖于框架的,并且处理业力插件。
因此,回答您的问题:
设计Karma的那个人的论文在描述现有解决方案和比较它们,当然还描述Karma本身时非常有用。
https://github.com/karma-runner/karma/blob/master/thesis.pdf
简介:业力是一名测试跑步者。QUnit,Jasmine,Mocha等都可以使用它。...Karma对其他测试运行者具有优势,可以改善您的TDD / BDD开发周期。它“监视”文件,因此当您保存更改时,Karma会立即运行测试并报告,无需切换上下文到Web浏览器即可运行测试。
简而言之,也许应该是Karma AND Jasmine或Mocha或QUnit?