我是Mocha的新手,我正在尝试用它来测试一个简单的React组件.如果react组件没有任何CSS样式,则测试将通过,但如果React组件中的标记包含任何className,则会抛出语法错误:
Testing.react.js
import React from 'react';
export default class Testing extends React.Component {
render() {
return (
<section>
<form>
<input type="text" />
</form>
</section>
);
}
}
Run Code Online (Sandbox Code Playgroud)
testing.jsx
import {
React,
sinon,
assert,
expect,
TestUtils
} from '../../test_helper';
import TestingSample from '../../../app/components/Testing.react.js';
describe('TestingSample component', function(){
before('render and locate element', function(){
var renderedComponent = TestUtils.renderIntoDocument(
<TestingSample />
);
var inputComponent = TestUtils.findRenderedDOMComponentWithTag(
renderedComponent, 'input'
);
this.inputElement = inputComponent.getDOMNode();
});
it('<input> should be of type "text"', function () {
assert(this.inputElement.getAttribute('type') === 'text'); …Run Code Online (Sandbox Code Playgroud) 我正在将一些npm脚本移植到Webpack加载器以更好地了解Webpack是如何工作的,除了我的Mocha测试之外我还有一切正常工作:我有一个失败的测试,但它没有显示Mocha正在运行mocha-loader或测试失败了:
我需要做些什么来让所有src/**/*.test.js文件与Webpack中的Mocha一起运行?
npm test以查看测试应如何工作npm run dev以查看如何使用Webpack运行测试我运行一个mocha命令来运行我的测试
$ ./node_modules/.bin/mocha --compilers coffee:coffee-script -R spec
Run Code Online (Sandbox Code Playgroud)
我希望将其他选项传递给coffee-script编译器( - 以避免在将.coffee编译为.js时引入的外部闭包).有没有办法做到这一点?我试过了
$ ./node_modules/.bin/mocha --compilers coffee:coffee-script --bare -R spec
Run Code Online (Sandbox Code Playgroud)
但这看起来不对.它也没有说--bare不是摩卡的有效选择.
error: unknown option `--bare'
Run Code Online (Sandbox Code Playgroud) 使用WebPack,您可以在代码中导入样式:import './PageSpinner.styl';但是当您尝试使用Mocha测试此代码时,您的测试将与SyntaxError崩溃,因为引擎会尝试处理JS代码等样式.
如何使用Mocha测试这样的代码?