Tests de charge modernes pour les développeurs et les testeurs à l'ère DevOps.
Télécharger · Documentation · Forum communautaire · Feuille de route publique
k6 est un outil de test de charge moderne, construit sur nos années d'expérience dans les secteurs de la performance et des tests. Il est conçu pour être puissant, extensible et complet. L'objectif clé de la conception est de fournir la meilleure expérience aux développeurs .
Ses principales fonctionnalités sont :
Voilà à quoi ressemblent les tests de charge au 21e siècle.
import http from "k6/http" ;
import { check , sleep } from "k6" ;
// Test configuration
export const options = {
thresholds : {
// Assert that 99% of requests finish within 3000ms.
http_req_duration : [ "p(99) < 3000" ] ,
} ,
// Ramp the number of virtual users up and down
stages : [
{ duration : "30s" , target : 15 } ,
{ duration : "1m" , target : 15 } ,
{ duration : "20s" , target : 0 } ,
] ,
} ;
// Simulated user behavior
export default function ( ) {
let res = http . get ( "https://test-api.k6.io/public/crocodiles/1/" ) ;
// Validate response status
check ( res , { "status was 200" : ( r ) => r . status == 200 } ) ;
sleep ( 1 ) ;
}
Vous pouvez exécuter des scripts comme celui-ci sur la CLI, dans votre CI ou sur un cluster Kubernetes.
La documentation couvre tous les aspects de l'utilisation de k6. Voici quelques faits saillants :
Ces liens effleurent à peine la surface ! Si vous recherchez des informations conceptuelles, vous pouvez consulter les types de tests, les stratégies de tests ou l'un des nombreux articles informatifs du blog.
Notre équipe se consacre à l’amélioration continue et à fournir la meilleure expérience utilisateur possible. La feuille de route publique couvre les fonctionnalités orientées utilisateur, les améliorations UX et la prise en charge de JavaScript sur lesquelles notre équipe se concentrera. N'oubliez pas que les délais et les priorités peuvent changer, mais nous pensons qu'il est important de partager notre vision.
Nous espérons qu’il fournira un aperçu clair de nos projets de développement futur. Nous apprécions les commentaires, corrections et suggestions via GitHub pour le rendre plus complet, accessible et précieux pour la communauté.
Il convient de mentionner que nous considérons les votes positifs (pouce levé) comme l'une des mesures essentielles pour déterminer les besoins de la communauté. Si vous souhaitez nous montrer l'importance d'une fonctionnalité, merci de lui donner un coup de pouce.
Si vous souhaitez contribuer ou aider au développement de k6, commencez par lire CONTRIBUTING.md. Avant de commencer à coder, il peut être judicieux de discuter d'abord de vos plans et des détails de mise en œuvre avec les responsables de k6, en particulier lorsqu'il s'agit de changements et de fonctionnalités importants. Vous pouvez le faire dans le numéro GitHub pour le problème que vous résolvez (créez-en un s'il n'existe pas).
Remarque : Pour divulguer les problèmes de sécurité, reportez-vous à SECURITY.md.
Pour obtenir de l'aide, signaler des bogues, suggérer des fonctionnalités et discuter de k6 avec d'autres, reportez-vous à SUPPORT.md.
k6 est distribué sous la licence AGPL-3.0.