问题标签 [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.
javascript - 角种子使用哪个测试匹配器库
我们使用 Angular 种子项目设置我们的 Angular 项目,并使用 jasmine 测试框架进行测试。
但是,我感到困惑和惊讶,因为很多 jasmine 文档与期望/匹配逻辑和间谍无关。
出于期望,我希望能够使用 jasmine 文档中的内容,例如:
这些都不起作用,而是看起来我必须编写 chai 类型的代码:
并且让间谍能够写出这样的期望:
但我必须写:
所以两个问题:
- 茉莉花匹配是否有一般建议而不是 Chai,反之亦然?哪个是社区的首选?还是种子项目没有赶上某种过渡?
- 作为一个新手,我更喜欢 Jasmine 匹配(特别是在使用间谍时),所以我如何进行 grunt 测试以使用 Jasmine 而不是 Chai?
此外,如果让 see 项目使用使用 Jasmine 2.0 和 1.3 的 karma-jasmine 插件,那就太好了。
谢谢。
更新
我应该注意另外两件事。我们运行的是带有 grunt 和 karma-jasmine 的测试,例如:
我们的 karma.conf.js 文件看起来像:
我认为框架:['jasmine'] 会让我们使用 jasmine,而框架:['mocha', 'chai'] 会让我们使用 chai。
angularjs - 然后未调用已解决承诺的方法
我正在尝试使用 sinon、jasmine 和 $q 来存根一个方法。我希望该方法返回我的假数据。
问题是定义的then
语句从未被调用,我不知道为什么。这已经是一个简化版本,但它仍然无法正常工作:
- 存根被称为
- 控制台日志
Steven Stub is called
被调用 - 没有
then
调用任何回调 - 没有错误信息
这是我的代码
任何想法?
gruntjs - grunt-karma 没有在 phantom js 中加载茉莉花
我(大致)有以下目录设置
并且正在使用 browserify 来捆绑 JS。
这种设置真的很痛苦,因为所有的 grunt/karma/browserify 代码都与服务器代码完全混合在一起。
我想要的是将所有内容移动到客户端目录中,例如
就捆绑 JS 代码和测试的依赖项而言,这与 browserify 完美配合。
唯一的问题是 karma 在运行测试时不再能够找到 jasmine。我将日志级别设置为调试,看起来工作设置运行:
业力连接到浏览器后。
我没有在损坏的设置中看到这些,但任务和配置是相同的。唯一真正的区别是节点模块位于客户端目录中,源代码已移至新目录。
angularjs - 通过右键菜单在 Web Storm 中运行单个 Karma Jasmine 测试
如果测试规范Idea Web Storm
在.Karma
karam.conf.js
但是,如果我右键单击 JS 文件并选择“Run MySpec.js”,我会收到以下错误:
也许不可能以这种方式运行 JS 测试。
以下是中的配置WebStorm
:
正如我提到的,链接到 karma.conf.js 文件的 KT 配置工作正常。
任何帮助表示赞赏。
javascript - 使用业力和茉莉花的Angularjs基本测试用例,不起作用
我是角度测试的新手。在这里运行业力没有错误。expected(true).toBe(true) 和 expected(false).toBe(true) 给出与下面相同的输出,我不知道为什么。
业力.conf.js
测试/规范/控制器/main.js
karma-runner - 业力错误:TypeError:“未定义”不是对象
在运行 Karma 测试运行时,我看到了所有这些奇怪的错误。有任何想法吗?
[jenkins@xcclx0194 工作区]$ karma start karma.conf.js --single-run
INFO [karma]:Karma v0.12.16 服务器开始于http://jenkins.test.com:9876/ INFO [launcher]:正在启动浏览器 PhantomJS INFO [PhantomJS 1.9.7 (Linux)]:连接到套接字 287TYh_PCxnMv4F5SzII,ID 为 8378863
PhantomJS 1.9.7 (Linux) 错误
TypeError:“未定义”不是对象(评估“Toolbox.Base”)
在 /apps/devops/jenkins/home/jobs/UIMod-Jasmine-Karma/workspace/WebContent/js/controllers/common/base.controller.js:4 PhantomJS 1.9.7 (Linux): Executed 4 of 38 错误 (0.126秒/0.043 秒)
谢谢。
angularjs - 更改子文件夹中的文件时,AngularJS grunt 服务未运行
我使用 grunt、yeoman 和 bower 创建了一个 AngularJS 应用程序。
在app文件夹中,我有一个view文件夹。在里面我有很多html文件。我执行grunt serve命令来运行应用程序。我正在使用铬。当我更改任何文件(样式、脚本、图像、视图)时,chrome 会刷新页面并显示差异。
我在视图中有一个名为sub的文件夹。我在子文件夹中有一些 html 文件。它在我运行应用程序时出现。但是,如果我更改该文件夹中任何文件的内容,chrome 不会刷新。我必须手动刷新它。
这是为什么?
Gruntfile.js
业力.conf.js
业力-e2e.conf.js
angularjs - 如何将我们的服务注入角度单元测试用例?
这就是我正在做的事情,包括beforeEach(module('myApp'));
根据我的知识使用的整个应用程序,它必须加载所有模块(如控制器、服务等),并且通过编写下面的代码,我应该能够注入服务preloadedData
,但有些我得到了异常Error: [$injector:unpr] Unknown provider: preloadedDataProvider <- preloadedData
beforeEach(inject(function ($controller, $httpBackend, $rootScope, $window, $location, preloadedData) {
scope = $rootScope.$new();
location = $location;
routeParams = $routeParams;
httpBackend = $httpBackend;
myController= $controller('myController', {
$scope: scope,
$location: location,
preloadedData: preloadedData
});
}));
谁能帮我解决这个问题.. !!?
angularjs - 在 angularJs 中编写单元测试用例时是否必须模拟 $http 服务?
为了编写单元测试,我们是否有必要在 Angular js 中模拟 $http 服务?如果是,我们为什么要这样做?否则你能否让我知道如何在不模拟 $http 服务的情况下编写单元测试..
node.js - Disconnected (1 times), because no message in 10000 ms using Karma-Jasmine
Using Karma runner with jasmine. After all the configuration done, I type on terminal the below command:
But I am getting the below error where my browser is getting closed.
I changed the browserNoActivityTimeout in Karma config to 50 seconds but still the same error. Its happening for both safari and chrome. I have not tried for other browsers.
I could not find much input fro other github threads on the same issue. Like changing port does not help either.
Has anyone faced the same issue?