1、安装karma
安装时,需要提前安装node.js,才能执行下列步骤
打开命令行,把karma安装到系统里,加上-g参数,使全局可用
2、创建配置文件
打开netbeans,在项目配置文件夹下创建karma.conf.js文件
在IDE里,选中项目,右键--》新建--》karma配置文件
修改文件内容:
创建测试文件
3、配置项目
选中项目--》右键属性--》JavaScript测试--》测试提供器karma
配置文件选中刚刚创建的karma.conf.js,确定关闭属性对话框。
4、运行测试项目
项目多了一个karma的图标,选中--》右键--》启动,即可进行项目测试。
5、异常,百撕不得骑姐~
按照官方的说明,配置N次,都不能成功执行。
恭喜你,和我的版本一样,是netbeans的bug
问题原因:
netbeans未能够识别出来karma.conf.js文件,给
C:\Users\consumer\AppData\Roaming\npm\karma.cmd 脚本传了个错误的启动参数
根本没有加载我们的配置文件。
解决办法:
项目--》配置文件夹--》右键--》新建--》空文件--》karma.cmd
输入
项目--》右键--》属性--》JavaScript单元测试--》karma--》浏览--》选中karma.cmd
--》确定
rock and roll~
若控制台为乱码,修改netbeans的配置文件:
在NetBeans 8.0\etc\netbeans.conf文件里追加一行
netbeans_default_options="-J-Dfile.encoding=UTF-8"
单元测试代码的编写方法
安装时,需要提前安装node.js,才能执行下列步骤
打开命令行,把karma安装到系统里,加上-g参数,使全局可用
npm install -g karma karma-cli npm install -g karma-jasmine karma-chrome-launcher karma-firefox-launcher karma-ie-launcher karma-junit-reporter karma-commonjs karma-coverage karma-script-launcher
2、创建配置文件
打开netbeans,在项目配置文件夹下创建karma.conf.js文件
在IDE里,选中项目,右键--》新建--》karma配置文件
修改文件内容:
module.exports = function(config) { config.set({ basePath: '../', files: [ 'public_html/js/*.js', 'test/js/*.js' ], exclude: [ ], autoWatch: true, frameworks: ['jasmine' ], browsers: ['Chrome' ], reporters: ['progress', 'junit'], // the default configuration junitReporter: { outputFile: 'test-results.xml', suite: '' }, plugins: [ 'karma-junit-reporter', 'karma-chrome-launcher', 'karma-firefox-launcher', 'karma-script-launcher', 'karma-jasmine' ] }); };
创建测试文件
//路径public_html/js/plus.js // Some code under test function plus(a, b) { return a + b; }
//路径test/js/test.js describe('plus', function() { it('should pass', function() { expect(true).toBe(true); }); it('should work', function() { expect(plus(1, 2)).toBe(3); }); it('should work', function() { expect(plus(5, 4)).toBe(2); }); });
3、配置项目
选中项目--》右键属性--》JavaScript测试--》测试提供器karma
配置文件选中刚刚创建的karma.conf.js,确定关闭属性对话框。
4、运行测试项目
项目多了一个karma的图标,选中--》右键--》启动,即可进行项目测试。
5、异常,百撕不得骑姐~
ERROR [karma]: [TypeError: Cannot call method 'push' of undefined] TypeError: Cannot call method 'push' of undefined at onBrowserStart (C:\Users\xxx\AppData\Roaming\npm\node_modules\karma\lib\reporters\base.js:14:20) at null.<anonymous> (C:\Users\xxx\AppData\Roaming\npm\node_modules\karma\lib\events.js:15:22) at EventEmitter.emit (events.js:117:20) at onStart (C:\Users\xxx\AppData\Roaming\npm\node_modules\karma\lib\browser.js:128:13) at Socket.<anonymous> (C:\Users\xxx\AppData\Roaming\npm\node_modules\karma\lib\events.js:15:22) at Socket.EventEmitter.emit [as $emit] (events.js:117:20) at SocketNamespace.handlePacket (C:\Users\xxx\AppData\Roaming\npm\node_modules\karma\node_modules\socket.io\lib\namespace.js:335:22) at Manager.onClientMessage (C:\Users\xxx\AppData\Roaming\npm\node_modules\karma\node_modules\socket.io\lib\manager.js:488:38) at WebSocket.Transport.onMessage (C:\Users\xxx\AppData\Roaming\npm\node_modules\karma\node_modules\socket.io\lib\transport.js:387:20) at Parser.<anonymous> (C:\Users\xxx\AppData\Roaming\npm\node_modules\karma\node_modules\socket.io\lib\transports\websocket\hybi-16.js:39:10) 完成。
按照官方的说明,配置N次,都不能成功执行。
恭喜你,和我的版本一样,是netbeans的bug
Product Version: NetBeans IDE 8.0 (Build 201403101706) 更新: NetBeans IDE 已更新到版本 NetBeans 8.0 Patch 1.1 Java: 1.7.0_45; Java HotSpot(TM) 64-Bit Server VM 24.45-b08 Runtime: Java(TM) SE Runtime Environment 1.7.0_45-b18 System: Windows 7 version 6.1 running on amd64; GBK; zh_CN (nb) C:\Users>node --version v0.10.22 C:\Users>karma --version Karma version: 0.12.9
问题原因:
netbeans未能够识别出来karma.conf.js文件,给
C:\Users\consumer\AppData\Roaming\npm\karma.cmd 脚本传了个错误的启动参数
start "D:\Program Files\NetBeans 8.0\webcommon\karma\karma-netbeans.conf.js" --port 9880
根本没有加载我们的配置文件。
解决办法:
项目--》配置文件夹--》右键--》新建--》空文件--》karma.cmd
输入
karma start config\karma.conf.js
项目--》右键--》属性--》JavaScript单元测试--》karma--》浏览--》选中karma.cmd
--》确定
rock and roll~
start config\karma.conf.js INFO [karma]: Karma v0.12.9 server started at http://localhost:9876/ INFO [launcher]: Starting browser Chrome INFO [Chrome 34.0.1847 (Windows 7)]: Connected on socket esBL7IuEI9lscGYZ_WXz with id 57142013 Chrome 34.0.1847 (Windows 7): Executed 0 of 3 SUCCESS (0 secs / 0 secs) Chrome 34.0.1847 (Windows 7): Executed 1 of 3 SUCCESS (0 secs / 0.01 secs) Chrome 34.0.1847 (Windows 7): Executed 2 of 3 SUCCESS (0 secs / 0.011 secs) Chrome 34.0.1847 (Windows 7) plus should work FAILED Expected 9 to be 2. Error: Expected 9 to be 2. at null.<anonymous> (E:/html-app/test/js/test.js:11:25) Chrome 34.0.1847 (Windows 7): Executed 3 of 3 (1 FAILED) (0 secs / 0.012 secs) Chrome 34.0.1847 (Windows 7): Executed 3 of 3 (1 FAILED) (0.018 secs / 0.012 secs)
若控制台为乱码,修改netbeans的配置文件:
在NetBeans 8.0\etc\netbeans.conf文件里追加一行
netbeans_default_options="-J-Dfile.encoding=UTF-8"
单元测试代码的编写方法
发表评论
-
解决eclipse在修改js卡顿现象
2018-02-09 15:49 1378新版eclipse编辑含有javascript内容的jsp时, ... -
chosen 数据的动态更新
2016-09-08 15:28 1769chosen是个不错的复合下拉组件,缺点是文档较少 源码在gi ... -
优秀的弹层组件
2016-04-20 18:19 663http://layer.layui.com/ -
googleapis.com域名访问慢的解决办法
2016-04-13 12:09 9741、安装火狐 2、安装插件ReplaceGoogleCDN -
国内常用前端公共库CDN服务
2015-11-15 14:00 945BAIDU http://cdn.code.baidu.co ... -
jquery validate 1.14
2015-10-12 20:14 797<!DOCTYPE html PUB ... -
jquery 事件处理handler函数的参数
2015-02-08 23:22 2586jquery 事件处理handler函 ... -
jquery tr rowindex
2014-11-30 13:42 907var tr = $(this).parents('tr' ... -
jqgrid please select row warning
2014-11-23 19:42 1734引入ui.jqgrid.css即可解决 -
改变多个jquery.ready的默认顺序
2014-11-23 15:37 1299$(document).ready 这个函数的解释: 引用 D ... -
javascript 错误的继承方式
2014-11-02 23:02 727var parent = {t:1,m:2,} pare ... -
JS图片格式验证
2014-07-03 16:48 924function pic(file){ var r ... -
更改underscorejs默认的匹配符
2014-06-14 11:51 848/** 修改underscore.js默认的< ... -
uglifyjs批量压缩js
2014-06-13 16:34 2435jquery官方使用uglifyjs进行压缩的,压缩比较高 ... -
html5 canvas作的手写板【兼容手机】
2014-05-21 15:56 5288<!DOCTYPE html> <ht ... -
backbone.js model和view视图的单元测试
2014-05-20 17:32 1362backbone的模块化开发,需要引入测试流程保证代码的质量, ... -
由正则表达式html或xml标签配对说起【括号编组和正负向预查】
2014-05-15 14:17 2477经常会查找xml或HTM ... -
netbeans和karma进行单元测试二【jasmine入门】
2014-05-20 15:43 1690karma配好之后,默认使用的是jasmine作为测试框架: ... -
javascript的代理和切面
2014-05-15 13:39 743Java里有面向切面的实现方式,可以监控包、对象、函数 ... -
backbone.js路由Router的使用
2014-05-09 11:33 1583路由的使用很简单,路由的转向 router.navigate( ...
相关推荐
JUnit提供了丰富的断言方法和测试注解,如`@Test`,帮助开发者编写清晰、可读性强的测试代码。此外,JUnit还支持测试驱动开发(TDD)方法论,鼓励开发者在编写功能代码之前先写测试,从而确保代码的健壮性和可维护性...
netbeans配置及xdebug 调试 单元调试 单独流程调试
NetBeans IDE作为一个强大的开源集成开发环境,提供了对JUnit的内置支持,让开发者能够无缝地在NetBeans中进行单元测试。本篇文章将详细讲解如何在NetBeans中使用JUnit进行测试。 首先,确保你已经安装了支持JUnit...
总之,通过安装和配置Netbeans、Tomcat以及Emmet插件,开发者可以构建高效的工作环境,方便地进行Web应用程序的开发和测试。Emmet的强大功能使得HTML和CSS编码变得更加便捷,是前端开发者的得力助手。
通过这个视频录像,观众将能学习到如何在NetBeans环境中高效地管理数据库连接,进行数据查询和测试,以及如何将数据库集成到Java应用程序中。无论你是初学者还是经验丰富的开发者,这个教程都将提供宝贵的知识,帮助...
第二篇为NetBeans集成开发环境的高级应用篇,本篇结合具体的实例讲解如何进行JUnit单元测试、代码性能分析、代码版本控制、开发Web应用程序、企业级应用程序、进行UML建模,以及开发SOA应用程序。第三篇介绍如何使用...
在Java EE方面,它可以用于开发和测试Web服务、EJBs、JSFs等,对于企业级应用开发提供了全面的工具集。 在项目开发过程中,NetBeans的调试工具是必不可少的,它允许用户设置断点、查看变量值、单步执行代码,从而...
testAdd的代码修改后如下: NetBeans5.0单元测试实践[5] 软件测试 默认的测试类的执行结果是全部都不能通过的,结果如下: 我们需要对生成的测试代码进行修改,将我们的测试用例以及期望的结果写入测试代码中,...
第二篇为NetBeans集成开发环境的高级应用篇,本篇结合具体的实例讲解如何进行JUnit单元测试、代码性能分析、代码版本控制、开发Web应用程序、企业级应用程序、进行UML建模,以及开发SOA应用程序。第三篇介绍如何使用...
* 在 Ubuntu 操作系统上安装和配置 Netbeans 8.2 需要进行一些基本的配置步骤。 * 需要安装 Java 8,以便 Netbeans 正常工作。 * 需要配置环境变量,以便 Netbeans 可以在命令行中使用。 * Netbeans 可以用于创建...
NetbeansNetBeans5.0单元测试...M NetBeans5.0单元测试实践[4] 软件测试 //TODO查看生成的测试代码并删除会失败的缺省调用。 fail("测试案例为原型。"); } /** *currency方法的测试(属于类moneychange.Money)。
本篇笔记将带你进入JUnit与NetBeans的结合使用世界,让你在NetBeans中更高效地进行单元测试。 首先,我们需要安装JUnit库到NetBeans。在NetBeans中,打开“工具”菜单,选择“库”,然后点击“新建库”。在弹出的...
如下图: NetBeans5.0单元测试实践[3] 软件测试 这并不是创建单元测试的唯一方法,也可以通过“工具”下拉菜单中的“创建Junit测试”进行。接着弹出“创建测试”对话框,对测试类的类名以及需要生成的内容进行...
在这样的环境下,开发者通常会进行Web应用的开发和测试,尤其是Java Enterprise Edition (Java EE) 应用程序,因为NetBeans和GlassFish都是Java EE开发和部署的重要工具。 描述中提到的问题在于“输出老是1,不能...
开发者可能会编写JUnit测试用例,对游戏的各个功能模块进行单元测试,以验证它们是否按预期工作。 此外,Java小游戏的开发还需要掌握基本的编程概念,如变量、条件语句(if-else)、循环(for, while)、函数以及...
6. **调试和测试** IDE提供了强大的调试工具,包括断点设置、单步执行、变量查看、调用堆栈分析等功能,帮助开发者定位和修复代码中的错误。此外,NetBeans还支持JUnit和TestNG等单元测试框架,促进代码质量的提升...
在IT行业中,开发人员经常需要使用集成开发环境(IDE)来编写、测试和调试代码,而NetBeans就是其中的一款流行工具。本篇文章将详细讲解如何使用NetBeans IDE连接到MySQL和SQL Server数据库,以实现数据的存储和检索...
4. **PHP开发**:NetBeans对PHP开发者同样友好,提供代码提示、调试和测试工具。实例可能涉及创建PHP网页,使用框架如Laravel或Symfony,以及数据库交互。 5. **版本控制**:NetBeans集成了Git和其他版本控制系统,...
Junit提供了一些注解和断言,例如@Before、@After、@Test等,用于描述测试用例的生命周期和测试用例的断言。Junit单元测试可以帮助开发者快速地测试Java应用程序,提高软件的可靠性和稳定性。 四、 数据库开发过程...