React not render checked属性

时间:2016-07-29 20:26:46

标签: reactjs

目前我正在使用Jest来测试我的React App。我有以下代码:

var component = TestUtils.renderIntoDocument(<input type="radio" defaultChecked={true}/>)
var node =  ReactDOM.findDOMNode(component)

console.log(node.outerHTML)
// Return
// <input data-reactroot="" type="radio">

为什么检查属性不呈现?

2 个答案:

答案 0 :(得分:1)

checkedHTML中可能没有checked属性。但是node.checked的测试返回true。

import React from 'react';
import TestUtils from 'react-addons-test-utils';
import ReactDOM from 'react-dom';

describe('radio_test', () => {
  it('outputs default', () => {
    const component = TestUtils.renderIntoDocument(<input type="radio" defaultChecked={true}/>);
    const node =  ReactDOM.findDOMNode(component);
    expect(node.type).toEqual('radio');
    expect(node.checked).toEqual(true);
  });
});

答案 1 :(得分:0)

我更新后我的反应就行了。但是在测试中,outerHTML没有显示像Vijay所说的已检查属性。所以,请使用以下期望:

expect(node.checked).toEqual(true);