31 lines
940 B
Markdown
31 lines
940 B
Markdown
---
|
||
layout: pattern
|
||
title: Arrange/Act/Assert
|
||
folder: arrange-act-assert
|
||
permalink: /patterns/arrange-act-assert/
|
||
categories: Idiom
|
||
tags:
|
||
- Testing
|
||
---
|
||
|
||
## Also known as
|
||
Given/When/Then
|
||
|
||
## Intent
|
||
The Arrange/Act/Assert (AAA) is a pattern for organizing unit tests.
|
||
It breaks tests down into three clear and distinct steps:
|
||
1. Arrange: Perform the setup and initialization required for the test.
|
||
2. Act: Take action(s) required for the test.
|
||
3. Assert: Verify the outcome(s) of the test.
|
||
|
||
## Applicability
|
||
Use Arrange/Act/Assert pattern when
|
||
|
||
* you need to structure your unit tests so they're easier to read, maintain, and enhance.
|
||
|
||
## Credits
|
||
|
||
* [Arrange, Act, Assert: What is AAA Testing?](https://blog.ncrunch.net/post/arrange-act-assert-aaa-testing.aspx)
|
||
* [Bill Wake: 3A – Arrange, Act, Assert](https://xp123.com/articles/3a-arrange-act-assert/)
|
||
* [Martin Fowler: GivenWhenThen](https://martinfowler.com/bliki/GivenWhenThen.html)
|