Skip to content

Commit

Permalink
FIX shape
Browse files Browse the repository at this point in the history
  • Loading branch information
TOUL committed Jul 24, 2023
1 parent bfdd73a commit 9fe1a8c
Showing 1 changed file with 47 additions and 48 deletions.
95 changes: 47 additions & 48 deletions TP_instructions/tp2.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,63 +41,63 @@ Pour écrire des tests, nous allons utiliser le framework `pytest`.
fichiers de tests, c'est probablement qu'il faut découper le fichier contenant les fonctions également.

3. Pour écrire les tests, nous recommandons d'utiliser le format "Given / When / Then" et le paradigme "assert first"
1. Créer une fonction `test_process_name` selon le template suivant:
```python
def test_process_name():
# Given
1. Créer une fonction `test_process_name` selon le template suivant:
```python
def test_process_name():
# Given

# When
# When

# Then
```
2. Écrire le `then` en premier, nous allons nous assurer que le résultat est bien celui attendu, en comparant 2 data
frames.
```python
import pandas as pd
# Then
```
2. Écrire le `then` en premier, nous allons nous assurer que le résultat est bien celui attendu, en comparant 2 data
frames.
```python
import pandas as pd

def test_process_name():
# Given
def test_process_name():
# Given

# When
# When

# Then
pd.testing.assert_frame_equal(expected_df, result_df)
```

Commencez par le Then permet de s'assurer que l'on sait ce que l'on veut valider
3. Écrire le `when` : l'appel à la fonction
```python
import pandas as pd
from src.feature_engineering import process_name
# Then
pd.testing.assert_frame_equal(expected_df, result_df)
```

Commencez par le Then permet de s'assurer que l'on sait ce que l'on veut valider
3. Écrire le `when` : l'appel à la fonction
```python
import pandas as pd
from src.feature_engineering import process_name

def test_process_name():
# Given
def test_process_name():
# Given

# When
result_df = process_name(df)
# When
result_df = process_name(df)

# Then
pd.testing.assert_frame_equal(expected_df, result_df)
```
4. Finir par écrire le `given`
```python
import pandas as pd
from src.feature_engineering import process_name
# Then
pd.testing.assert_frame_equal(expected_df, result_df)
```
4. Finir par écrire le `given`
```python
import pandas as pd
from src.feature_engineering import process_name

def test_process_name():
# Given
df = pd.DataFrame({"Name": ["Braund, Mr. Owen Harris"]})
expected_df = pd.DataFrame({"Name": ["Braund, Mr. Owen Harris"],
"Name_Len": [23],
"Name_Title": "Mr."})
# When
result_df = process_name(df)
def test_process_name():
# Given
df = pd.DataFrame({"Name": ["Braund, Mr. Owen Harris"]})
expected_df = pd.DataFrame({"Name": ["Braund, Mr. Owen Harris"],
"Name_Len": [23],
"Name_Title": "Mr."})
# When
result_df = process_name(df)

# Then
pd.testing.assert_frame_equal(expected_df, result_df)
```
Pour écrire les données de tests, nous recommandons (si ce ne sont pas des données personnelles ou
confidentielles) d'utiliser des données de la production.
# Then
pd.testing.assert_frame_equal(expected_df, result_df)
```
Pour écrire les données de tests, nous recommandons (si ce ne sont pas des données personnelles ou
confidentielles) d'utiliser des données de la production.
4. Exécuter les tests en cliquant sur la petite flèche verte à côté du nom de la fonction

## Écrire d'autres tests
Expand All @@ -106,7 +106,6 @@ Duration: 0:15:00

Pour vous exercer, écrivez 3 autres tests automatisés sur d'autres fonctions.


## Lien vers le TP suivant

Duration: 0:01:00
Expand Down

0 comments on commit 9fe1a8c

Please sign in to comment.