Questions tagged «karma-runner»

Karma为开发人员提供了一个测试环境,使他们不必设置很多东西,而只需编写代码并获得即时反馈即可提高生产力和创造力。

11
npm检查并更新软件包(如果需要)
我们需要将Karma测试运行程序集成到TeamCity中,为此,我想给sys-engineers一个小的脚本(powershell或其他),该脚本将: 从一些配置文件中选择所需的版本号(我想我可以将其作为注释放在karma.conf.js) 检查是否已在npm的全球回购中安装了已定义的业力赛跑者版本 如果不是,或者安装的版本比预期的旧:请安装并安装正确的版本 运行: karma start .\Scripts-Tests\karma.conf.js --reporters teamcity --single-run 所以我真正的问题是:“如果安装了所需版本的软件包,如何才能签入脚本?”。您应该做支票,还是npm -g install每次都打电话安全? 我不想总是检查并安装最新的可用版本,因为其他配置值可能会变得不兼容

9
NPM无法安装依赖项-尝试解锁尚未锁定的内容
我一直在尝试在我的package.json文件上运行npm安装,但是遇到了很多麻烦。我一直依赖于它,一直说“错误:尝试解锁尚未锁定的XXX”。这是其中之一: Error: Attempt to unlock tbd@~0.6.4, which hasn't been locked at unlock (/usr/local/lib/node_modules/npm/lib/cache.js:1304:11) at cb (/usr/local/lib/node_modules/npm/lib/cache.js:646:5) at /usr/local/lib/node_modules/npm/lib/cache.js:655:20 at /usr/local/lib/node_modules/npm/lib/cache.js:1290:7 at /usr/local/lib/node_modules/npm/node_modules/lockfile/lockfile.js:167:38 at OpenReq.Req.done (/usr/local/lib/node_modules/npm/node_modules/graceful-fs/graceful-fs.js:144:5) at OpenReq.done (/usr/local/lib/node_modules/npm/node_modules/graceful-fs/graceful-fs.js:64:22) at Object.oncomplete (fs.js:107:15) 如果我尝试以sudo的身份运行它,它似乎会更进一步并开始安装一些软件包,但是会弹出一些新错误: > chokidar@0.8.1 postinstall /Users/tkirchner/Documents/Projects/mm-datatable/node_modules/karma/node_modules/chokidar > node setup-deps.js shell-init: error retrieving current directory: getcwd: cannot access parent directories: Permission …

9
运行一个测试文件
有没有一种方法可以ng test针对单个文件而不是整个测试套件运行?理想情况下,我想在编辑文件时获得最快的反馈循环,但是karma在每次保存时都执行整个套件,这在构建足够大的测试套件时会有点慢。 这与如何仅使用angular-cli执行一个测试规范不同,因为该问题与运行单个规范有关。这是关于运行单个文件。该解决方案具有相同的Jasmine规范功能,但问题的性质略有不同。

7
未定义Angular返回模块中的测试服务
我试图在我的项目中运行默认的服务单元测试(取自GitHub上的Angular Seed项目),但是我一直收到错误消息“模块未定义”。 我已经读到它可能与所引用的JavaScript文件的顺序有关,但是我似乎无法使其正常工作,因此希望你们中的一个能够提供帮助。 我的测试配置如下所示: basePath ='../'; 文件= [ 'public / javascripts / lib / jquery-1.8.2.js', 'public / javascripts / lib / angular.js', 'public / javascripts / lib / angular.js ', 'public / app.js ”, “ public / controllers / .js”, “ public / directives.js”, “ public / filters.js”, “ public …

8
安装后运行业力导致“业力”不被识别为内部或外部命令
使用以下方法安装业力后,我尝试将业力作为有角种子项目的一部分运行 npm install -g karma 我得到: 'karma' is not recognized as an internal or external command, operable program or batch file. 当我尝试从angular-client \ scripts运行test.bat时,此文件的内容为: 设置BASE_DIR =%〜dp0 业力开始“%BASE_DIR%.. \ config \ karma.conf.js”%* 我还尝试导航到“ \ AppData \ Roaming \ npm \ node_modules \ karma \ bin”,并看到了因果文件,当我尝试运行它时,我又得到了: 无法将“业力”识别为内部或外部命令,可操作程序或批处理文件。 有什么建议?如果不是,请建议如何使用茉莉而不使用业力。 谢谢。



7
Angular Karma Jasmine错误:非法状态:无法加载指令摘要
我正在开发github存储库(使用angular 7和angular-cli),并且在master分支中使用Karma和Jasmine进行了一些测试。 现在,我正在尝试添加延迟加载功能,事实是,在通过测试之前,现在还没有。这很有趣,因为只有延迟加载模块中的测试失败了... 这是代码和错误: import {async, TestBed} from '@angular/core/testing'; import {APP_BASE_HREF} from '@angular/common'; import {AppModule} from '../../app.module'; import {HeroDetailComponent} from './hero-detail.component'; describe('HeroDetailComponent', () => { beforeEach(async(() => { TestBed.configureTestingModule({ imports: [AppModule ], providers: [ {provide: APP_BASE_HREF, useValue: '/'} ], }).compileComponents(); })); it('should create hero detail component', (() => { const …

3
业力:从命令行运行单个测试文件
因此,我一直在寻找这个问题,在这里找到了“类似”的答案,但并不是我想要的。 现在,如果我想测试与因缘一个单一的文件,我需要做的fit(),fdescribe()对有问题的文件... 但是,我想要的只是能够使用配置文件调用karma,并将其定向到特定文件,因此我根本不需要修改该文件,即: karma run --conf karma.conf.js --file /path/to/specific/test_file.js 是否有可能做到这一点?或有任何帮助?(使用咕unt声或吞咽声?)

26
错误:您需要包括一些实现__karma __。start方法的适配器
我正在尝试向我的项目之一添加一些单元测试。 到目前为止,我已经安装并配置了业力,并且已经安装了茉莉花。我有一个测试文件test/夹中。 业力服务器已启动,浏览器页面已就绪,但karma run失败,如下所示: $ karma run karma-conf.js [2014-06-14 15:19:11.046] [DEBUG] config - Loading config /foo/test/karma-conf.js Waiting for previous execution... Chrome 35.0.1916 (Linux) ERROR You need to include some adapter that implements __karma__.start method! 此错误消息不适用于Google。 这是显而易见的,还是我需要提供更多信息?

5
角度4单元测试错误`TypeError:ctor不是构造函数`
我正在尝试测试我的路由解析器,而在测试TypeError: ctor is not a constructor时却不知道为什么打字稿编译时不会出错。 TypeError: ctor is not a constructor TypeError: ctor is not a constructor at _createClass (http://localhost:9877/_karma_webpack_/vendor.bundle.js:42355:26) at _createProviderInstance$1 (http://localhost:9877/_karma_webpack_/vendor.bundle.js:42330:26) at resolveNgModuleDep (http://localhost:9877/_karma_webpack_/vendor.bundle.js:42315:17) at _createClass (http://localhost:9877/_karma_webpack_/vendor.bundle.js:42362:26) at _createProviderInstance$1 (http://localhost:9877/_karma_webpack_/vendor.bundle.js:42330:26) at resolveNgModuleDep (http://localhost:9877/_karma_webpack_/vendor.bundle.js:42315:17) at NgModuleRef_.webpackJsonp../node_modules/@angular/core/@angular/core.es5.js.NgModuleRef_.get (http://localhost:9877/_karma_webpack_/vendor.bundle.js:43401:16) at TestBed.webpackJsonp../node_modules/@angular/core/@angular/core/testing.es5.js.TestBed.get (http://localhost:9877/_karma_webpack_/vendor.bundle.js:48412:47) at http://localhost:9877/_karma_webpack_/vendor.bundle.js:48418:61 at Array.map (native)


8
在Karma + AngularJS测试中加载模拟JSON文件
我有一个使用Karma + Jasmine进行测试的AngularJS应用程序。我有一个要测试的函数,该函数需要一个大型JSON对象,然后将其转换为应用程序的其余部分更易使用的格式,然后返回该转换后的对象。而已。 对于我的测试,我希望您有单独的JSON文件(* .json),仅包含模拟JSON内容-没有脚本。对于测试,我希望能够加载JSON文件并将对象泵入要测试的功能中。 我知道我可以按如下所述将JSON嵌入到模拟工厂中:http : //dailyjs.com/2013/05/16/angularjs-5/,但是我真的希望JSON不包含在脚本中-只是纯JSON文件。 我已经尝试了一些方法,但是在这个领域我还算是新手。首先,我将Karma设置为包括JSON文件,以查看其作用: files = [ ... 'mock-data/**/*.json' ... ] 结果是: Chrome 27.0 (Mac) ERROR Uncaught SyntaxError: Unexpected token : at /Users/aaron/p4workspace4/depot/sitecatalyst/branches/anomaly_detection/client/anomaly-detection/mock-data/two-metrics-with-anomalies.json:2 因此,然后我将其更改为仅提供文件,而不是“包含”它们: files = [ ... { pattern: 'mock-data/**/*.json', included: false } ... ] 现在只提供服务了,我想我会尝试从规格中使用$ http加载文件: $http('mock-data/two-metrics-with-anomalies.json') 运行规范时,我收到: Error: Unexpected request: GET mock-data/two-metrics-with-anomalies.json …

7
在业力单元测试期间如何修复图像的404警告
我正在使用grunt / karma / phantomjs / jasmine对我的指令之一(angularjs)进行单元测试。我的测试运行正常 describe('bar foo', function () { beforeEach(inject(function ($rootScope, $compile) { elm = angular.element('<img bar-foo src="img1.png"/>'); scope = $rootScope.$new(); $compile(elm)(); scope.$digest(); })); .... }); 但我确实得到了这些404 WARN [web-server]: 404: /img1.png WARN [web-server]: 404: /img2.png ... 尽管它们什么也不做,但是它们确实会在日志输出中增加噪音。有没有办法解决这个问题 ?(当然,无需更改业力的logLevel,因为我确实希望看到它们)

2
对具有依赖项的AngularJS工厂进行单元测试
在对Angular工厂进行单元测试(使用Karma + Jasmine)时,如何将存根依赖项注入到要测试的工厂中? 这是我的工厂: mod = angular.module('myFactoryMod', []); mod.factory('myFactory', [ '$log', 'oneOfMyOtherServices', function($log, svc) { return makeSomethingThatDoesSomethingWithTheseDependencies($log, svc); } ]); oneOfMyOtherServices 实例化我的工厂时需要。 这是我的测试: it('can get an instance of my factory', function() { var oneOfMyOtherServicesStub; angular.mock.module('myFactoryMod'); oneOfMyOtherServicesStub = { someVariable: 1 }; //****How do I get my stub in my target? …

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.