---
title: "Exécuter son propre JavaScript dans un test web"
sidebarTitle: "Script"
description: Exécutez votre propre JavaScript lorsqu'aucun step intégré ne convient.
lastUpdated: "2026-09-23"
---

> **For AI agents:** the complete documentation index is at [llms.txt](/llms.txt). Append `.md` to any page URL for its markdown version.

Exécutez votre propre JavaScript dans le test : gérez un flux qu'aucun step intégré ne couvre, calculez une valeur, ou envoyez une métrique personnalisée vers Analytics. Le script s'exécute dans la session navigateur du test avec l'API WebdriverIO complète à disposition.

## Paramètres

| Paramètre | Requis | Description |
| ----------- | -------- | ------------- |
| Titre du step | Non | Le nom affiché pour ce step dans le builder et dans les résultats. |
| Script | Oui | Code JavaScript, édité dans une modale dédiée. |
| Ignorer l'erreur sur ce step | Non | L'exécution continue avec le step suivant si le script lève une erreur. Par défaut : désactivé. |

Dans le script, vous pouvez utiliser l'objet WebdriverIO `browser` pour piloter la session, ainsi que les helpers `test`, par exemple :

```javascript
// Push a custom metric to Analytics
test.metrics.create("checkout", { basket_total: 39.98 }, { currency: "EUR" });
```

## Résultats et métriques

- **Temps** : début, fin et durée (en secondes) enregistrés dans le résultat du step.
- **Statut** : échec si le script lève une erreur, succès dans le cas contraire.
- **Sortie** : tout ce que le script journalise est disponible dans la sortie du step pour le débogage.
- **Métriques personnalisées** : les métriques créées avec `test.metrics.create(measurement, fields, tags)` remontent vers Analytics comme n'importe quelle métrique intégrée.

## Et ensuite ?

<Columns cols={2}>
  <Card title="Définir une variable" icon="brackets-curly" href="/fr/tests/actions/web/setvariable">

    Stockez une valeur sans écrire de code

</Card>
  <Card title="Analytics" icon="chart-line" href="/fr/analytics/dashboards">

    L'endroit où apparaissent les métriques personnalisées

</Card>
</Columns>
