Ich lerne zu testen Reagieren Sie statusfreie Komponenten mit der ReactTestUtils Bibliothek. Das ist meine einfache Komponente:Funktionskomponenten mit renderIntoDocument testen
import React from 'react';
const Greeter = ({name,place}) => (
<h1>Hello,{name}. Welcome to the {place}.</h1>
);
export default Greeter;
Dies ist mein Test-Spezifikation, die renderIntoDocument
zum Laufen zu bringen, wickelte ich meine Greeter Komponente in einem div als here vorgeschlagen:
import {expect} from 'chai';
import React from 'react';
import ReactTestUtils from 'react-addons-test-utils';
import Greeter from '../Greeter';
describe('Greeter Components',() => {
it('renders correctly',() => {
var component = ReactTestUtils.renderIntoDocument(<div>
<Greeter name="Vamsi" place="Hotel California"/>
</div>);
var hasH1 = ReactTestUtils.findRenderedDOMComponentWithTag(component,'h1');
expect(hasH1).to.be.ok;
});
});
erhalte ich die Fehler
findAllInRenderedTree (...): Instanz muss eine zusammengesetzte Komponente sein.
Ich stelle meinen Code als jsbin here zur Verfügung.
Das hat mir sehr geholfen – codeVerine