Learn to use accelerated test-driven development (TDD) to build a React application from scratch. This book explains how your React components will be integrated, and how to refactor code to make it more concise and flexible.
With TDD you can develop a robust test suite to catch bugs, and develop modular, flexible code. Applying your understanding of how HTML, CSS, and JavaScript work in the browser you'll build a web application called Bookish using TDD and mainstream React stack technologies such as React, React-router, and Redux.
Using higher code quality you'll be able to write executable documentation using Cucumber. This is just one of many essentials in maintaining a practical TDD workflow in your daily workload.
Test-Driven Development with React
highlights best practices and design patterns that will enable you to write more maintainable and reusable React components.
What You'll Learn
-
Manage your application's state using Redux
- Employ professional techniques for backend services
- Use Cypress as an end-to-end testing framework
- Utilize React-testing-library for unit and integration tests
Who This Book Is For
Ideal for web application developers who wants to learn how to write high quality code using Test-Driven Development.
Edition
Language
Place of publication
Target group
Professional and scholarly
Illustrations
39
39 s/w Abbildungen
XXI, 197 p. 39 illus.
Dimensions
Height: 25.4 cm
Width: 17.8 cm
Weight
ISBN-13
978-1-4842-6971-8 (9781484269718)
DOI
10.1007/978-1-4842-6972-5
Schweitzer Classification
Juntao Qiu is a senior web application developer at ThoughtWorks. Over the past ten years, he has helped his clients to build solid, extensible and high-quality web applications on a range of projects including traditional web applications using jQuery and JSP (Java Server Pages) to single page applications (SPAs) using Backbone, AngularJS, and React. Juntao knows how to handle the complexity of real-world projects by applying appropriate methodologies including writing clean code and effective automation tests.
He also is a technical author who has already published two books in the Chinese language:
JavaScript Core Concepts and Practices (2013)
and
Lightweight Web Application Development (2015)
. He is passionate about writing blogs and speaking at events. He has a real passion for clean code, refactoring, and Test-Driven Development.
Additionally, he does Muay Thai and Boxing in his spare time.
A Very Brief History of Test-Driven Development Test-Driven Development (TDD) Techniques that can help implement TDD Summary Further reading References Getting Started with Jest Set up the environment Jest at first glance Using matchers in Jest Mock & Stub Summary Test-Driven Development 101 Writing tests Triangulation method How to implement tasking with TDD Summary Project Setup Application Requirements Create the project Summary Creating the Book List Acceptance tests for book list Talk to the book server Adding a loading indicator Implementing Book Detail View Acceptance tests Unit tests Testing data User Interface refinement Handling default value One last? change Searching by Keyword Acceptance test Moving forward Summary State Management State management Implementing State Management Reducer Integration test for redux store Migration the application Summary Further readings References Managing Book Reviews Business requirements End to end test Add more fields Review Editing Behaviour-Driven Development Play with Cucumber Live Document with Cucumber Test Report Summary Appendix: Design the State Shape of Your Application
Error handling The data shape Appendix: Background of Testing Strategies
Different layers of tests