diff --git a/packages/react-test-renderer/src/ReactShallowRenderer.js b/packages/react-test-renderer/src/ReactShallowRenderer.js
index ef50aafa28d..6c55709bca6 100644
--- a/packages/react-test-renderer/src/ReactShallowRenderer.js
+++ b/packages/react-test-renderer/src/ReactShallowRenderer.js
@@ -125,7 +125,7 @@ class ReactShallowRenderer {
_mountClassComponent(props, context) {
this._instance.context = context;
this._instance.props = props;
- this._instance.state = this._instance.state || emptyObject;
+ this._instance.state = this._instance.state || null;
this._instance.updater = this._updater;
if (typeof this._instance.componentWillMount === 'function') {
diff --git a/packages/react-test-renderer/src/__tests__/ReactShallowRenderer-test.js b/packages/react-test-renderer/src/__tests__/ReactShallowRenderer-test.js
index a2e572e7bd3..fc76810aa1f 100644
--- a/packages/react-test-renderer/src/__tests__/ReactShallowRenderer-test.js
+++ b/packages/react-test-renderer/src/__tests__/ReactShallowRenderer-test.js
@@ -947,4 +947,17 @@ describe('ReactShallowRenderer', () => {
renderAndVerifyWarningAndError([], 'array');
renderAndVerifyWarningAndError({}, 'object');
});
+
+ it('should have initial state of null if not defined', () => {
+ class SomeComponent extends React.Component {
+ render() {
+ return ;
+ }
+ }
+
+ const shallowRenderer = createRenderer();
+ shallowRenderer.render();
+
+ expect(shallowRenderer.getMountedInstance().state).toBeNull();
+ });
});