F#: Automated Testing for Developers
Offered By: LinkedIn Learning
Course Description
Overview
Explore techniques for automated software testing in F#. Learn how to improve your test run experience with Ncrunch, work with Unquote to clarify test failures, and more.
Automated testing is a popular topic in software development, but it's still often seen by developers as overhead rather than as an opportunity. By leveraging F# and some external tools and libraries, you can make automated testing easy, enjoyable, and productive. In this course, learn about a variety of techniques for writing automated testing code in F#.
Kit Eason explains how to use xUnitâa .NET unit-testing packageâto do some test-driven development, and demonstrates how to improve your test run experience using NCrunch, a test runner. He shows how to use FsCheck to generate test cases, and how to use Expecto to move into the world of tests as first-class values. He also covers the use of Canopy to automate the testing of web user interfaces, and of mocking to tame dependencies.
Automated testing is a popular topic in software development, but it's still often seen by developers as overhead rather than as an opportunity. By leveraging F# and some external tools and libraries, you can make automated testing easy, enjoyable, and productive. In this course, learn about a variety of techniques for writing automated testing code in F#.
Kit Eason explains how to use xUnitâa .NET unit-testing packageâto do some test-driven development, and demonstrates how to improve your test run experience using NCrunch, a test runner. He shows how to use FsCheck to generate test cases, and how to use Expecto to move into the world of tests as first-class values. He also covers the use of Canopy to automate the testing of web user interfaces, and of mocking to tame dependencies.
Syllabus
Introduction
- Welcome
- What you should know
- Working with the sample code
- Solving issues with early versions of Visual Studio 2017
- What are automated tests and why do they matter?
- Creating a testable project and installing Paket and xUnit
- Creating your first tests
- Test driving an implementation: Part 1
- Test driving an implementation: Part 2
- Providing functional dependencies to tests
- Exercise: Removing nulls from your implementation
- Exercise solution: Removing nulls from your implementation
- Introducing NCrunch: A marvelous test runner
- Organizing tests in NCrunch
- Exercise: Extending test coverage
- Exercise solution: Extending test coverage
- Introducing property-based testing with FsCheck
- Applying property-based testing
- Supplying additional values
- Controlling FsCheck test data generation
- Exercise: Writing an FsCheck test using a generator
- Exercise solution: Writing an FsCheck test using a generator
- Using Unquote to clarify test failures
- Introducing first-class tests with Expecto
- Writing tests in Expecto
- Writing property-based tests in Expecto
- Exercise: Converting tests to use Expecto
- Exercise solution: Converting tests to use Expecto
- Introducing mocking with Foq
- Web UI testing with Canopy
- Next steps
Taught by
Kit Eason
Related Courses
Programming in F#Microsoft via edX F#
Exercism F# Bite-sized
Independent Developing Financial Applications in F#
LinkedIn Learning Visual Studio Essential Training: 04 Surveying the Programming Languages
LinkedIn Learning