Pour tout problème contactez-nous par mail : support@froggit.fr | La FAQ :grey_question: | Rejoignez-nous sur le Chat :speech_balloon:

Skip to content
Snippets Groups Projects
Commit 80d690c5 authored by Marc's avatar Marc
Browse files

yolo

parent 72cc7204
No related branches found
No related tags found
No related merge requests found
Pipeline #35184 passed
public/images/binomer_metier.png

120 KiB

public/images/image-2024-05-24-10-17-11-591.png

519 KiB

public/images/image-2024-05-24-10-17-31-287.png

413 KiB

public/images/qrcode_swcraft.png

6.58 KiB

This diff is collapsed.
......@@ -35,7 +35,7 @@
:docinfo: private
// :docinfodir: {outdir}
== 🔥 Ce talk contient des démos
== Avez-vous déjà ?
......@@ -301,11 +301,6 @@ image::approval_tdd_10_production_code_green_delete_received.png[]
image::approval_tdd_11_final_green.png[]
[%notitle]
=== Foo
[%notitle]
=== Foo
== Acceptance Test Driven Development
......@@ -357,21 +352,49 @@ image::approval_attd_07.png[]
image::approval_attd_08.png[]
=== Intérêt
[NOTE]
====
* On peut laisser le travail en plan
** Les tests nous indiquent ce qu'il reste à faire
** On peut s'appuyer sur notre brouillon
** On peut tester les règles plus fines une à la fois
====
== REST API
[CAUTION]
====
Idéalement pouvoir maitriser l'état de départ et d'arrivée
====
== IHM
[NOTE]
====
Se concentrer sur la sémantique plutôt que les détails.
Pas toujours le plus adapté
====
== Propriétés
[NOTE]
====
- facilité de mise en place
- très couvrant
- très refactoring friendly (on crée une abstraction par le texte qui permet d'isoler les détails d'implémentation)
- Il est facile de mettre à jour les résulats attendus (à l'aide de nos outils de diff)
- Facilité de mise en place
- Très couvrant
- Très refactoring friendly
- Outils de diff pour mettre à jour les changements
- On sait facilement où on en est : on peut comparer à notre brouillon sur papier ou tableau blanc
- On peut éviter des abstractions prématurées qui pourraient se coupler dans nos tests
- Aide à éviter des abstractions prématurées
- Binomer avec les gens du métier
- Eviter des développer des IHM trop tôt
====
== Inconvénients
[WARNING]
====
- Les fichiers sont générés à partir des noms de fichier et de fonctions, il vaut mieux anticiper les noms de ces test.
......@@ -379,8 +402,11 @@ image::approval_attd_08.png[]
== Possibilités
=== Tester des rendus avec des parties aléatoires
=== Tests paramétrés
Démo
=== Scrubbers
[.notes]
--
......@@ -395,6 +421,8 @@ On peut utiliser des "scrubbers" qui sont des fonctions de "neutralisation".
Elles permettent de transformer des éléments de texte non reproductibles en quelquechose de stable.
--
Démo
=== Combinaisons
[CAUTION]
......@@ -402,15 +430,9 @@ Elles permettent de transformer des éléments de texte non reproductibles en qu
Attention à l'explosion combinatoire!
====
===
Démo
=== foo
== Concrete
Kata
== En Java
== Exemples En Java
== TDD avec Approvals en Java
......@@ -434,9 +456,6 @@ image::approval_tdd_demo_sketch.png[]
=== Un test avec une assertion Approval
[source,java]
.TrucTest.java
----
......@@ -471,53 +490,103 @@ image::approvals_attd_java_01_blank_diff.png[]
=== Boucle interne TDD
=== Test que fizzbuzz retourne le nombre donné
[%step]
[source,java]
.FizzBuzzAttdTest.java
----
include::exemples/java/exemples-java/src/test/java/fr/baldir/exemples/approval/FizzBuzzAttdTest.java[tag=approvals_attd_01]
----
[%step]
[source,java]
----
include::exemples/java/exemples-java/src/test/java/fr/baldir/exemples/approval/FizzBuzzAttdTest.java[tag=approvals_attd_02]
----
[%step]
[source,java]
----
include::exemples/java/exemples-java/src/test/java/fr/baldir/exemples/approval/FizzBuzzAttdTest.java[tag=approvals_attd_03]
----
[%step]
[source,java]
----
include::exemples/java/exemples-java/src/test/java/fr/baldir/exemples/approval/FizzBuzzAttdTest.java[tag=approvals_attd_04]
----
=== Vert
Quand tous les tests de la boucle interne passent et que la boucle externe passe.
La fonctionalité est terminée.
== Approvals + Asciidoctor
== Et BDD dans tout ça?
Démo
== Et BDD dans tout ça?
* Binômer avec le métier
** Réfléchir sur brouillons et tableau blanc
** A l'aide de résultats de scénarios lisibles par des humains
* Itérer rapidement
** Avec un rendu "sexy"
** Permet de discuter métier sans IHM ou maquettes
== Conclude
image::binomer_metier.png[]
== Questions ?
== Fin
- Ressources
- Image swcraft 1
- Image swcraft 2
- u.baldir.fr/me
- u.baldir.fr/at-2024-stras-talk-sources/
== Plan en vrac
* Approval Testing
** diff
** c'est une alternative pour les assertions
* Pour commencer
** Approval Kata
* Cas d'usage
** Legacy Code
*** Produire beaucoup de résultats
*** Vérifier des états complexes
*** Peut être utile pour faire des tests de caractérisation
*** https://blog.approvaltests.org/2008/10/approval-tests-pictures-worth-1000.html[Approval Tests pictures are worth 1000 words]
* Asciidoctor
** Les tableaux
* Ressources additionnelles
** https://approvaltests.com[approvaltests.com]
** https://approvaltests.com/faq/[Approvaltests FAQ]
** https://www.youtube.com/watch?v=vMww6pV6P7s&list=PL7GpAlmbnHyAOQfqrF9-HXFIG45LvPKy_[Emily Bache — Approval Testing playlist]
** https://blog.approvaltests.org/2012/05/testing-circle.html[The Testing Circle]
[.columns]
== Software Craft Strasbourg
[.column]
--
image::qrcode_swcraft.png[]
--
[.column]
--
30 mai
image::image-2024-05-24-10-17-11-591.png[]
--
[.column]
--
6 juin
image::image-2024-05-24-10-17-31-287.png[]
--
//
// == Plan en vrac
//
// * Approval Testing
// ** diff
// ** c'est une alternative pour les assertions
// * Pour commencer
// ** Approval Kata
// * Cas d'usage
// ** Legacy Code
// *** Produire beaucoup de résultats
// *** Vérifier des états complexes
// *** Peut être utile pour faire des tests de caractérisation
// *** https://blog.approvaltests.org/2008/10/approval-tests-pictures-worth-1000.html[Approval Tests pictures are worth 1000 words]
// * Asciidoctor
// ** Les tableaux
// * Ressources additionnelles
// ** https://approvaltests.com[approvaltests.com]
// ** https://approvaltests.com/faq/[Approvaltests FAQ]
// ** https://www.youtube.com/watch?v=vMww6pV6P7s&list=PL7GpAlmbnHyAOQfqrF9-HXFIG45LvPKy_[Emily Bache — Approval Testing playlist]
// ** https://blog.approvaltests.org/2012/05/testing-circle.html[The Testing Circle]
//
// == Asciidoc quick refs
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment