问题标签 [karma-jasmine]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2671 浏览

karma-runner - 使用注入的 Jasmine 单元测试

在这个测试中,我不确定为什么需要在这两行中将 angular 变量设置为注入参数。是不是因为注入没有自动分配 $compile 和 $rootScope?

0 投票
0 回答
103 浏览

javascript - Karma 不尊重浏览器的属性

我正在尝试仅在一个浏览器中运行单元测试,但 karma 还在 Chrome 中继续运行它们。我的配置如下所示:

为什么会这样?有没有办法只在 IE 中运行测试?

谢谢。

0 投票
1 回答
260 浏览

javascript - Angularjs前端Jasmine单元测试问题

我已经用 jasmine 测试了我的 javascript 代码,但是当我看到我的 jenkins 单元测试覆盖率时,我有一些行没有标记为绿色(未测试)。所以这就是为什么我要问我的问题:

--> 假设 tagStyle.length = 0

--> 我的测试如下:

关于这一点的任何想法?

第二个问题与第一个问题相同,但有点复杂:

我有以下 Javascript 文件,我想用 jasmine 进行单元测试:

我的单元测试是这样的:

关于如何对我的第二种方法(AjouterProfilTag)进行单元测试的任何想法?提前致谢

0 投票
4 回答
9422 浏览

angularjs - Jasmine - 任何布尔值 (jasmine.any(Boolean))

我使用业力,茉莉花为角度编写单元测试。试着写:

但得到:

毫米..也许我做错了什么)还是在这种情况下编写价值测试的另一种方式:

if (true or false) - 通过,如果有其他 - 失败

0 投票
1 回答
664 浏览

requirejs - 带有 RequireJS 加载规范但没有 src 和 lib 文件的 Karma

我将 karma 0.10.9 与 requirejs、coffeescript、jasmine 和 jasmine-sprockets 一起使用(因为我正在处理一个 RoR 项目,并且我们有一些文件只包含 sprockets 指令)。

当我开始业力时,我收到“Executed 0 of 0 ERROR”消息。

看起来在运行器页面(localhost:9876)上,lib 和 src 文件没有被加载,但规范会。控制台中没有错误。当我将 lib 或 src 文件的 url 直接复制到地址栏中时,文件会被加载。

在调试页面上,所有文件(库、源代码和测试)都被加载。

我一无所知...

这是我的 karma.conf.js:

还有 test-main.coffee:

任何帮助表示赞赏。

谢谢!

0 投票
1 回答
725 浏览

karma-runner - 配置 Karma-dojo 以使用 dojo 的本地存储库

我正在尝试为我的 Dojo 项目设置本地测试环境。我决定将 Karma 作为测试运行程序,将 Jasmine 作为套件。我找到了一些关于如何设置它的示例 karma.config 文件,并且效果很好。但是,当我尝试在主测试文件中设置 dojo.config 以指向本地版本的 dojo 时,它就会中断。这有效:

};

但是一旦我做这样的事情:

};

这是错误日志:

然后它运行并为所有 dojo 模块输出相同的内容。

0 投票
1 回答
486 浏览

javascript - 从浏览器检测 Karma 的 runner 模式

Karma 在浏览器中有两种运行模式:默认和调试 ( /debug.html)。两种模式的运作方式存在差异。例如,在调试模式下,您可以console.log使用循环引用的对象。在默认模式下,这会生成 JSON 循环引用错误。

是否有一种机制可以检测来自 JS 的 Karma 处于哪种模式,以便在调试模式下激活额外的错误日志记录?

0 投票
0 回答
380 浏览

javascript - 没有待处理的刷新请求

在我的测试中,我收到了这个错误:

这是我的代码:

我看到其他人也有同样的问题,但我的 MainCtrl 无法解决:

我的客户Ctrl:

0 投票
3 回答
21768 浏览

javascript - AngularJS Jasmine 测试失败:无法实例化模块

我的 Angular 应用程序运行良好,我的测试也是如此,使用 karma 和 jasmine,直到我在ui.bootstrap. 现在该应用程序仍按预期工作,但我无法运行我的测试。这就是我所拥有的:

app.js - 在ui.bootstrap中添加了依赖项

服务.js

控制器.js

测试/main.js

我使用 grunt 和 krama 运行的测试由于以下原因而失败:

我错过了什么?该应用程序运行没有问题,只有测试失败。

0 投票
1 回答
861 浏览

javascript - 如何使用 templateUrl 阻止 AngularJS 应用程序配置块在我的指令单元测试中运行?

我见过类似的问题,但没有一个能解决问题的根源,假设如下:

  1. 我不能使用whenGET('').passThrough(),因为我没有使用ngMockE2E
  2. 我不需要使用ngMockE2E,因为我正在为一个指令编写单元测试,该指令实际上除了吐出“bar”之外什么都不做。
  3. 一个建议是使用代理服务器来提供这些 HTTP 响应,但这不会违背单元测试的目的吗?

现在,让我向您展示我的指令:

这是单元测试:

现在,该测试可以很好地处理所有这些虚假$httpBackend业务,但这完全不属于我的单元测试!我怎么拉这个$httpBackend使用 templateUrl 将这些废话拉出来并阻止 AngularJS 应用程序配置块在我的指令单元测试中运行?

注意:仅当指令中有 templateUrl 时才会发生这种情况。

顺便说一句,在应用程序配置块中触发此 HTTP 请求的代码是:

但我认为这不一定相关。