Awesome k6
k6を扱う資料や関連プロジェクトをまとめたAwesomeリストです。
目次
記事
-
k6 Learn - 負荷試験の原理と、k6で実行する実践例の説明。
-
k6 OSS workshop - QuickPizzaデモアプリで実践的なk6例を使う2~3時間のk6ワークショップ。
-
Beginner’s guide to load testing with k6 - k6を始める助けになる、複数部からなる入門ガイド。
-
Best practices organizing performance testing projects with k6 - 複数チーム・プロジェクトにわたるパフォーマンステストをスケールするためのガイドライン。
- Part 2 - JavaScript tools, shared libraries, and TypeScript - JavaScriptツール、共有ライブラリ、TypeScriptを使うk6パフォーマンステストスイートの設定。
-
Distributed load testing with k6 - ConFoo Montreal 2023でのThijs Ferynによる発表。
-
Load Testing with k6 - k6の機能・能力の簡単な概要。
-
Test and visualize with InfluxDB, Grafana and K6 - 負荷試験を設定し、Grafanaダッシュボードで可視化する。
-
Open source load testing tool review 2020 - 最も人気の高いオープンソース負荷試験ツールの詳細な比較。
-
Load Testing Your API with Swagger/OpenAPI and k6 - OpenAPI仕様からk6負荷試験スクリプトを生成する。
-
Load Testing Your API with Postman - Postmanコレクションを使いAPIの負荷試験を行う方法。
-
Load Testing & Black Friday capacity planning - Back Marketがk6ベースの負荷試験によりブラックフライデーへ備えた方法。
-
Load Testing SQL Databases with k6 - xk6-sql拡張を使いSQLデータベースを直接テストする方法。
-
Introducing TestRail in your K6 tests - k6出力をTestRailへ報告する。
-
Beautiful Load Testing With K6 and Docker Compose - Docker Compose、K6、InfluxDB、Grafanaという優れた組み合わせで負荷試験を実行する方法。
-
Load Testing with Azure DevOps and k6 - Azure DevOpsを設定し、k6、handleCallback、JUnitを使う自動負荷試験を実行する方法。
-
K6 — Custom Slack Integration: Metrics are the Magic of Tests - handleSummaryコールバックを使いk6出力結果をSlackへ送信する方法。
-
Load testing with k6 - k6を使う負荷、ソーク、ストレス、スパイク、スモークテスト。
-
How to write three times fewer lines of code when doing load testing - TarantoolをテストするためGoでk6拡張を構築する。
-
Performance testing with k6 - Open APIとTypeScriptによるAPIパフォーマンステスト。
-
k6 introduces browser automation and Prometheus support in k6 OSS - Grafanaブログより。ObservabilityCON 2021での機能発表。
-
Testing shift left observability with the Grafana Stack, OpenTelemetry, and k6 - Grafanaブログより。ObservabilityCON 2021におけるJPMorgan ChaseのPlatform Engineering Executive Director、Vinodh Raviの講演要約。
-
Umbraco 9 - What a Performance! - Azure上のUmbraco v9の性能をUmbraco v8、およびWindows対Linuxと比較してテストする。
-
On maintaining a k6 codebase, Part 1 - 困難なk6負荷試験コードベースを保守するための個人的なヒント。
-
Load testing with k6 and k8s - Toucan DevOpsチームが、k6を負荷試験ツールとして選択した理由とk8sでデプロイする方法を説明する。
-
CloudPosse’s Load Testing Stack - k6、Grafana、InfluxDBを使う負荷試験スタック。
-
Real-time stress: AnyCable, k6, WebSockets, and Yabeda - Evil Martiansがk6とWebSocketsで「リアルタイムストレス」を追加する。
-
Streamlining Performance Testing with K6 and ChatGPT - Monish CorreiaはGitHub co-pilotを使いk6テストを書く。
動画
-
How to use k6 Cloud for load testing - k6 Cloudを始めるための短い動画シリーズ。
-
Intro to load testing with k6 and Grafana (k6 data source plugin and Prometheus Remote Write)
-
From Grafana ObservabilityCON: Intro to using k6 load testing with the Grafana observability stack
-
EveryoneCanContribute cafe: Load Performance Testing with k6
-
Playlist - What others says about k6
- What is K6 & How to get started with k6 - 「Is it Observable?」による、可観測性向けk6拡張を使うチュートリアル。
- Website Performance + Load Testing with K6 (k6.io) in 5 MINUTES! - DevOps Directiveによる、HARファイルからのテスト作成を示すk6の入門概要。
- Performance Testing your web app with k6 - Chris Jamesによる、オープンソースの負荷・パフォーマンス回帰テストツールk6と、API・Webサイトの負荷試験に関する解説。
- Application Load Testing with k6 - Daniel Knittl-Frank、@TechTalk Days 2021、k6入門。
- Performance Testing From Zero to Hero with K6 & Azure - NDC Oslo 2021でのJose Luis Latorre Millas。
- AI-Powered K6 Testing: No Code, No Hassle, Just ChatGPT! 🦾🚀 - この動画でKarthik K.K.は、コードを一行も書かずChatGPTがk6テストを作成できることを実演する。
-
QAPractices Load Testing with k6 - k6とGrafanaによる負荷、ストレス、ソークテストの実践ガイド。
例/テンプレート
- k6 examples - k6ドキュメント内の一般的な例のリスト。
- k6 QuickPizza examples - 複数のk6例を備え、デモ・ワークショップで使うWebアプリケーション。
- k6-template-es6 - k6テストでES6機能を有効にするためWebpackとBabelを使うスターターテンプレート。
- k6-typescript-template - TypeScriptでk6テストを書くためWebpackバンドラーを使うスターターテンプレート。
- k6-rollup-example - Rollupでk6テストをバンドルする例。
- Jahmilli/k6-example - TypeScriptでk6テストを書くためVite(Rollup)バンドラーを使うスターターテンプレート。
- tom-miseur/k6-templates - k6プロジェクト向けの意見を反映したスターターテンプレート。
- SwissLife-OSS/k6-multiscenario-template - K6を使いマルチシナリオテンプレートを実装する。
- agilob/multiscenario-tests - 複数のシナリオを同時に実行する。
- Im5tu/template-k6 - K6パフォーマンステストスイートテンプレート。
- mohsenny/k6-test-template - 負荷試験フレームワーク。
- kwidera/k6_framework - 別のk6フレームワーク例。
- Sahanipe/pet_store - Swagger PetStore API向けモジュール化スクリプト。
- lreimer/continuous-k6k8s - cronjobを使いKubernetesでk6テストを継続実行する。
- luketn/docker-k6-grafana-influxdb - コンテナ化したK6、Grafana、InfluxDBのインスタンスで負荷試験を実行する方法を示す。
ツール
- k6-to-junit - CIで容易に使うためk6出力をJUnit XMLへ変換するツール。
- k6-reporter - k6出力をHTMLレポートへ変換するツール。
- k6-html-reporter - k6 HTMLレポートを生成するツール。
- har-to-k6 - HAR記録をk6テストスクリプトへ変換するツール。
- postman-to-k6 - Postmanコレクションをk6テストスクリプトへ変換するツール。
- k6 generator - Swagger/OpenAPI仕様をk6テストスクリプトへ変換するツール。
- jmeter-to-k6 - JMeterテストケースをk6テストスクリプトへ変換するツール。
- jslib.k6.io - k6スクリプト向けの有用なユーティリティライブラリ。
- k6 for visual studio code - IDEから直接k6を実行するためのMarketplace拡張。
- k6 for IntelliJ - IntelliJベースのIDEからローカルまたはk6 Cloudでk6テストを実行・デバッグするIntelliJベースプラグイン。[原文表記どおり]。
- k6 Testkube executor
- k6-junit - k6 JUnitサマリーエクスポーターライブラリ。
- k6-expect - expectation向けjest風構文を提供し、関数型の方法でテスト記述を簡潔にするk6ライブラリ。
CI/CD
- k6 for Azure Pipelines
- k6 for Bamboo
- k6 for Buddy
- k6 for CircleCI
- k6 for Flagger
- k6 for GitHub Actions
- k6 for GitLab
- k6 for Google Cloud Build
- k6 for Jenkins
- k6 for Keptn
- k6 for TeamCity
拡張
- k6 Extensions
- GitHub Topic: xk6 - xk6ラベルが付いたk6拡張を探索する。
- Extension Registry - k6拡張のキュレーション一覧。
公式
- xk6-client-tracing - 分散トレーシングバックエンドを負荷試験するクライアント。
- xk6-disruptor - 障害を注入してテストする💣。
- xk6-exec - 外部コマンドを実行する。
- xk6-kubernetes - Kubernetesクラスタと対話する。
- xk6-loki - Lokiを負荷試験するクライアント。
- xk6-notification - 通知を作成する。
- xk6-output-influxdb - 結果をInfluxDB v2へエクスポートする。
- xk6-output-kafka - k6結果をリアルタイムにKafkaへエクスポートする。
- xk6-output-timescaledb - k6結果をTimescaleDBへエクスポートする。
- xk6-client-prometheus-remote - Prometheus Remote Writeの性能をテストする。
- xk6-sql - SQLサーバー(現時点ではPostgreSQL、MySQL、SQLite3)を負荷試験する。
- xk6-ssh - SSH。
コミュニティ
- xk6-cable - Action CableとAnyCableの機能をテストする。
- xk6-coap - Constrained Application Protocolエンドポイントと対話する。
- xk6-dotenv - .envファイルから環境変数を読み込む。
- xk6-ethereum - ethereumプロトコル向けK6拡張。
- xk6-faker - ランダムなダミーデータを生成する。
- xk6-file - ファイルを書き込む。
- xk6-g0 - golangでk6テストを書く。
- xk6-kafka - Apache Kafkaを負荷試験する。Avroメッセージにも対応。
- xk6-kv - VU間でキー・バリューデータを共有する。
- xk6-mock - HTTP(S)サーバーをモックする。
- xk6-mqtt - MQTT拡張。
- xk6-nats - k6テストにNATSサポートを提供する。
- xk6-opentelemetry - テストスクリプト内からOpenTelemetryシグナルを生成する。
- xk6-output-elasticsearch - 結果をElasticsearch 8.xへエクスポートする。
- xk6-output-prometheus-pushgateway - 結果をPrometheus pushgatewayへエクスポートする。
- xk6-output-statsd - テストメトリクスをStatsDサービスへリアルタイム出力できるようにする。
- xk6-output-timestream - 結果をAWS Timestreamへエクスポートする。
- xk6-playwright - Playwrightを使うブラウザ自動化・エンドツーエンドWebテスト。
- xk6-prometheus - k6向けPrometheus HTTPエクスポーター。
- xk6-prompt - UIを介した入力引数をサポートする。
- xk6-sse - Server-Sent Events(SSE)向けk6拡張。
- xk6-tcp - TCPポートへデータを送信する。
- xk6-top - テスト実行中に現在のk6メトリクスサマリーをターミナルで更新する。
関連
- How They Load Test - 世界中の企業がどのように負荷試験を実施しているかに関するリソースのコレクション。
- Load Testing Toolkit - コードまたはサービスのデバッグ、ベンチマーク、負荷・ストレス試験向けオープンソースツールのコレクション。
- awesome-http-benchmark - HTTPベンチマークツール、テスト/デバッグ、restAPI(RESTful)のコレクション。