Javascript 使用Jest在ReactJS中进行模态按钮测试
您好,我正在尝试为我的ReactJS项目编写自动化测试。 我的LoginModal.js在这里Javascript 使用Jest在ReactJS中进行模态按钮测试,javascript,unit-testing,reactjs,jestjs,gulp-jest,Javascript,Unit Testing,Reactjs,Jestjs,Gulp Jest,您好,我正在尝试为我的ReactJS项目编写自动化测试。 我的LoginModal.js在这里 var React =require('react'); var ReactBootstrap= require('react-bootstrap/lib'); var Modal= ReactBootstrap.Modal; var LoginModal= React.createClass({ getInitialState: function() {
var React =require('react');
var ReactBootstrap= require('react-bootstrap/lib');
var Modal= ReactBootstrap.Modal;
var LoginModal= React.createClass({
getInitialState: function() {
return {(
showModal: false
)}
},
open() {
this.setState({ showModal: true });
},
render: function(){
return(
<div>
<Modal show={this.state.showModal} onHide={this.close}
bsSize="small"
aria-labelledby="contained-modal-title-sm"
enforceFocus >
{this.state.showModal ?
this.props.labelOn :this.props.labelOff
}
<h1>Hello World</h1>
</Modal>
<button type="button"
className="member_login btn btn-link"
onClick={this.open} id="login">
Login <span className="caret"></span>
</button>
</div>
)
}
});
var React=require('React');
var ReactBootstrap=require('react-bootstrap/lib');
var Modal=ReactBootstrap.Modal;
var LoginModal=React.createClass({
getInitialState:函数(){
返回{(
showModal:错误
)}
},
开(){
this.setState({showmodel:true});
},
render:function(){
返回(
{this.state.showmodel?
this.props.labelOn:this.props.labelOff
}
你好,世界
登录
)
}
});
我的测试文件如下:
jest.unmock('../src/js/components/LoginModal');
var React =require('react');
var ReactDOM = require('react-dom');
var TestUtils= require('react-addons-test-utils');
var LoginModal= require('../src/js/components/LoginModal');
describe('LoginModal', () => {
it('open the modal after click', () => {
const loginClick = TestUtils.renderIntoDocument(
<LoginModal labelOn=true labelOff=false />
);
const loginClickNode = ReactDOM.findDOMNode(loginClick);
expect(loginClickNode.textContent).toEqual(false);
TestUtils.Simulate.change(
TestUtils.findRenderedDOMComponentWithTag(loginClick, 'Modal')
);
expect(loginClickNode.textContent).toEqual(true);
});
});
jest.unmock('../src/js/components/LoginModal');
var React=要求('React');
var ReactDOM=require('react-dom');
var TestUtils=require('react-addons-test-utils');
var LoginModal=require('../src/js/components/LoginModal');
描述('LoginModal',()=>{
它('单击后打开模式',()=>{
const loginClick=TestUtils.renderIntoDocument(
);
const loginClickNode=ReactDOM.findDOMNode(loginClick);
expect(loginClickNode.textContent).toEqual(false);
TestUtils.Simulate.change(
TestUtils.findRenderedomComponentWithTag(登录单击“模态”)
);
expect(loginClickNode.textContent).toEqual(true);
});
});
我想为登录按钮编写单元测试,但我没有在线获得任何样本或示例。如果有人愿意帮助我,那就太好了。
使用npm测试后,LoginModal模块显示错误
我是reactJs新手,我没有通过谷歌获得任何关于jest的教程或其他测试样本。
谢谢