Many books can (and have been) filled with the intricacies of testing. There's a lot of jargon and we could go on for quite some time. Instead, I want to focus on a handful of terms, which I think will be most useful to us. There are two common kinds of tests we can write.
Unit tests are tests that focus on one small, practical unit of work at a time. Given a non-trivial class or component, a unit test will focus on just one method or even just a single part of that method (if the method does many things).
To illustrate this, consider the following example code:
class Page extends React.Component { render() { return ( <div className="page"> <h1>{this.props.title}</h1> {this.props.content} </div> ); } } class Pages extends React.Component { render() { return ( <div className="pages"> {this.getPageComponents()} ...