What this book covers
Chapter 1, The Practice of Test Automation, gives an overview of the current field of test automation and an introduction to set the terminology. This chapter will give you a good sense of why test automation is needed.
Chapter 2, Writing Testable Code with Functional Programming, dives into functional concepts in order to write code that promotes testability. This chapter provides you with the introduction to functional constructs that will be used while writing unit tests.
Chapter 3, Setting Up Your Test Environment, acts as a tutorial on setting up your test environment in order for you to start testing, and is focused on tools such as NUnit, xUnit, and the built-in MSTest framework. It also provides a short guide for build scripts and continuous integration with F#.
Chapter 4, Unit Testing, lets you deep dive into unit testing with F# and using functional programming to drive unit tests and testability. It provides examples on how to test in isolation and stubbing, as well as dealing with dependencies and mock away databases.
Chapter 5, Integration Testing, explains how to write good integration tests in F# and what to think about when writing integration tests. We deal with the differences in integration testing with databases to those in external web services.
Chapter 6, Functional Testing, uses tools such as TickSpec in which you can write executable specifications in order to test on a higher abstraction level, which is closer to what the end user will experience.
Chapter 7, The Controversy of Test Automation, brings the reader up to date on what is being said about test automation in the community.
Chapter 8, Testing in an Agile Context, explains how to bring testing into a team and apply it in an agile process. This chapter provides arguments to convince your manager about the benefits test-driven development.
Chapter 9, Test Smells, informs you that just like code smells are an indication of an underlying problem in your design, there are also test smells that indicate there is an underlying problem with your tests.
Chapter 10, The Ten Commandments of Test Automation, covers 10 dos and don'ts of test automation, which comes from 8 years of test-driven development knowledge.
Chapter 11, Property-based Testing, will show you how to get started with FsCheck and it's integration with unit testing frameworks. It will also teach how you can test a game example using model-based testing, which is an extended concept of property-based testing.
This a bonus chapter and can be downloaded from the following link:
https://www.packtpub.com/sites/default/files/downloads/1232OS_Chapter_11.pdf