# Blog articles/Testing

### From HaskellWiki

< Blog articles(Difference between revisions)

(Added a link to "Code testing in Haskell"; updated the link for "QuickChecking a window manager") |
(Added Category:Tutorials) |
||

(One intermediate revision by one user not shown) | |||

Line 35: | Line 35: | ||

=== Other === | === Other === | ||

+ | * [https://github.com/kazu-yamamoto/unit-test-example/blob/master/markdown/en/tutorial.md Up-front Unit Testing in Haskell], this article is a tutorial about unit testing in Haskell using doctest, hspec and Cabal. | ||

* [http://ics.p.lodz.pl/~stolarek/blog/2012/10/code-testing-in-haskell/ Code testing in Haskell] | * [http://ics.p.lodz.pl/~stolarek/blog/2012/10/code-testing-in-haskell/ Code testing in Haskell] | ||

− | |||

== Proofs == | == Proofs == | ||

Line 68: | Line 68: | ||

* [http://haskell.org/haskellwiki/Research_papers/Testing_and_correctness Research papers on testing, proofs and correctness] | * [http://haskell.org/haskellwiki/Research_papers/Testing_and_correctness Research papers on testing, proofs and correctness] | ||

+ | |||

+ | |||

+ | [[Category:Tutorials]] |

## Revision as of 22:25, 21 January 2013

## 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

- HUnit 1.0 User's Guide
- On Unit Testing and Type Safety
- Getting started with HUnit
- Unit testing with HUnit

### 2.3 Catch

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

### 2.4 Other

- Up-front Unit Testing in Haskell, this article is a tutorial about unit testing in Haskell using doctest, hspec and Cabal.
- Code testing 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