# Blog articles/Testing

### From HaskellWiki

< Blog articles(Difference between revisions)

(→HUnit: update link) |
(→QuickCheck: +ln) |
||

Line 13: | Line 13: | ||

* [http://disparatemathematician.blogspot.com/2007/08/why-testing-code-should-be-laissez.html QuickCheck : Why Testing code should be Laissez-faire] | * [http://disparatemathematician.blogspot.com/2007/08/why-testing-code-should-be-laissez.html QuickCheck : Why Testing code should be Laissez-faire] | ||

* [http://www.kennknowles.com/blog/2007/12/03/calculating-the-reflect-rotate-translate-normal-form-for-an-isometry-of-the-plane-in-haskell-and-verifying-it-with-quickcheck/ Calculating the reflect-rotate-translate normal form for an isometry of the plane in Haskell, and verifying it with QuickCheck.] | * [http://www.kennknowles.com/blog/2007/12/03/calculating-the-reflect-rotate-translate-normal-form-for-an-isometry-of-the-plane-in-haskell-and-verifying-it-with-quickcheck/ Calculating the reflect-rotate-translate normal form for an isometry of the plane in Haskell, and verifying it with QuickCheck.] | ||

+ | * [http://www.jasani.org/2008/01/03/testing-haskell-with-quickcheck "Testing Haskell with QuickCheck"] | ||

===HUnit === | ===HUnit === |

## Revision as of 03:02, 10 May 2008

## Contents |

## 1 Type system enforcement

## 2 Testing, correctness and proofs

### 2.1 QuickCheck

- Introduction to QuickCheck
- QuickChecking a window manager
- Robustness and QuickCheck
- Parsec Parser Testing with QuickCheck
- QuickCheck : Why Testing code should be Laissez-faire
- Calculating the reflect-rotate-translate normal form for an isometry of the plane in Haskell, and verifying it with QuickCheck.
- "Testing Haskell with QuickCheck"

### 2.2 HUnit

### 2.3 Catch

- Does XMonad crash? On proving pattern coverage with Catch
- Preconditions on XMonad
- Equational Reasoning in Haskell

## 3 Proofs

### 3.1 GADTs

### 3.2 Coq

- Strong specifications in Coq: the type says everything
- Proving the monad laws in Coq
- Strongly Specified Functions

### 3.3 Isabelle

### 3.4 Related work

- See the section on theorem provers