Conference: Jun 13-15, 2016
Tutorials: Jun 16-17, 2016
Presentation: FsCheck: For Each Function, There Exist Properties to be Checked
Location:
- Salon C
Day of week:
- Friday
Love it or Loathe it, testing is an unavoidable aspect of developing high-quality software. But there's a world of difference between well-tested code and simply writing tests. Very often, the difference boils down to how you assess the "correctness" of your code. By focusing on software as a mapping from inputs to outputs, property-based testing offers a powerful methodology for testing the logical invariants a piece of code should always uphold, regardless of implementation details.
In this session we'll look at FsCheck, a powerful library for doing property-based testing and sophisticated data generation in the CLR ecosystem. In addition to the basic features of the library, attendees will learn about identifying common patterns and building specifications from collections of properties. We'll also explore how FsCheck can be used to refine domain models and integrate with other popular testing tools. Finally, real-world examples will highlight both the strengths and weaknesses of this approach to software craftsmanship. While no prior knowledge is assumed, familiarity with the CLR (.NET or Mono) will be helpful.
Tracks
Wednesday Jun 10
-
Applied Data Science and Machine Learning
Putting your data to use. The latest production methods for deriving novel insights
-
Engineer Your Culture
Building and scaling a compelling engineering culture
-
Modern Advances in Java Technology
Tips, techniques and technologies at the cutting edge of modern Java
-
Monoliths to Microservices
How to evolve beyond a monolithic system -- successful migration and implementation stories
-
The Art of Software Design
Software Arch as a craft, scenario based examples and general guidance
-
Sponsored Solutions Track I
Thursday Jun 11
-
Emerging Technologies in Front-end Development
The state of the art in client-side web development
-
Fraud Detection and Hack Prevention
Businesses are built around trust in systems and data. Securing systems and fighting fraud throughout the data in them.
-
Reactive Architecture Tactics
The how of the Reactive movement: Release It! techniques, Rx, Failure Concepts, Throughput, Availability
-
Architecting for Failure
War stories and lessons learned from building highly robust and resilient systems
-
High Performance Streaming Data
Scalable architectures and high-performance frameworks for immediate data over persistent connections
-
Sponsored Solutions Track II
Friday Jun 12
-
Architectures You've Always Wondered about
Learn from the architectures powering some of the most popular applications and sites
-
Continuously Deploying Containers in Production
Production ready patterns for growing containerization in your environment
-
Mobile and IoT at Scale
Users, Usage and Microservices
-
Modern Computer Science in the Real World
How modern CS tackles problems in the real world
-
Optimizing Yourself
Maximizing your impact as an engineer, as a leader, and as a person
-
Sponsored Solutions Track III