3

Application is created with npx create-react-app my-app. Running coverage report with npm test -- --coverage doesn't cover all files inside /src folder when checked with html file generated by istanbul, ie., project > coverage > lcov-report > index.html but with npm test -- --coverage --watchAll=false does cover all files inside /src folder but fails component render test with following error:

Nothing was returned from render. This usually means a return statement is missing. Or, to render nothing, return null.

Following are the project details:

Login.js

import React from "react";
import { withRouter } from "react-router";
export class Login extends React.Component {
  constructor(props) {
    super(props);
  }

  render() {
    return (
      <div className="page-login bg-img">
           ...
      </div>
      );
  }
}

const NewLogin = withRouter(Login);
export default NewLogin;

Login.test.js

import { render } from "enzyme";
import {Login} from "./components/Login"
describe(`Login page`, () => {
  it(`Login renders`, () => {
    render(<Login />);
  });
});

Package.json

"react": "^16.13.1",
"react-scripts": "^3.4.1",
"enzyme": "^3.11.0",
"enzyme-adapter-react-16": "^1.15.2",

Please help, I'm new to react unit testing. Thanks in advance.

skyboyer
  • 22,209
  • 7
  • 57
  • 64
Suraj A J
  • 359
  • 4
  • 19

0 Answers0