react-tdd-guide

A series of examples on how to TDD React

Github stars Tracking Chart

react-tdd-guide

A series of examples on how to TDD React

Getting started

  1. install nvm
  • Grab an editor or IDE. I recommend Webstorm, Atom, and VIM, in that order.
  • git clone ...
  • nvm install 4 OR if v4 of node.js is installed, nvm use
  • npm i

How to use this guide

Each section is broken out into its own folder, starting with basics. What you'll find there is the finished example. I am experimenting with using the commit history and comments to drive the guide itself. Feedback on whether this works or not would be appreciated.

Each commit that is suffixed with "- red" can be checked out separately to examine the failing test. Each commit that is suffixed with "- green" shows how I finally passed the failing assertion.

Looking at the history for each section will show you only the steps needed to drive that part of the application.

Philosophy

  • Avoid the need for runners and browsers
    • Achieved by using mocha and enzyme

Table of Contents

  • Basics - Steps for TDD'ing the simplest of React components: An unordered list of items. Start here if you're not familiar with TDD'ing React and want to see a simple introduction.
  • Simple event handling (WIP)
  • Simple stateful input
  • Centralized state management techniques (not done)
  • Redux (not done)
  • React router (not done)

Running the tests for a section

  • npm run <section name>

Running all tests

  • npm test

Contributing

Please feel free to open an issue for:

  • A question on how to do something
  • A request for further clarification

Use a pull request for

  • Suggestions on changing how something is tested
  • To add an example you think would be valuable

Caveats

I am not a windows user, therefore this has only been tested on OSX.

Main metrics

Overview
Name With Ownerzpratt/react-tdd-guide
Primary LanguageJavaScript
Program languageJavaScript (Language Count: 1)
Platform
License:MIT License
所有者活动
Created At2015-04-19 16:17:19
Pushed At2023-01-07 07:53:20
Last Commit At
Release Count0
用户参与
Stargazers Count594
Watchers Count14
Fork Count34
Commits Count92
Has Issues Enabled
Issues Count9
Issue Open Count2
Pull Requests Count13
Pull Requests Open Count4
Pull Requests Close Count0
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private