# k6 Cloud k6 Cloud is a [[SaaS]] [[Load Testing Platform]] that enables [[Protocol-based load testing]]. It is developed by [[k6 (Company)]]. ## Getting started with k6 Cloud <iframe width="560" height="315" src="https://www.youtube.com/embed/nwDI5k3gUIY" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe> - [[Navigating the k6 Cloud GUI]] - [[k6 Test Builder]] - [[Analyzing metrics on k6 Cloud]] ## Parts of k6 Cloud that are free Even though k6 Cloud is a paid service, there are some parts of it that are useful for users of [[k6 (tool)]] even if they don't have a subscription. The [[k6 Cloud Test Builder]] is a free and easy way to generate k6 scripts. The [[Grafana Cloud k6 Browser Recorder]] is available as [[Chrome]] and [[Firefox]] extensions and can be used to record browser traffic. ## [[First Impressions of k6 Cloud]] ## Key features of a load testing platform ### Scripting #### Creating a script - [x] [[Recorder]] - [x] [[Exclude third-party or configured domains]] - [x] [[GUI Test Builder]] - ![](assets/1621807217_0.png) - [x] [[Web-based script editor]] - [ ] [[Upload of scripts from other tools]] - [[k6 (tool)]] only - [x] [[Protocol-based load testing]] - [ ] [[Browser-based testing]] #### Making the script robust - [x] [[Supports all HTTP methods]] - [x] [[Sending parameters with request]] - [x] [[Modify headers]] - [x] [[Response assertions]] - Error handling - [x] [[Output to log upon error]] - Through the web-based script editor - [x] [[Continue on error or restart iteration]] - Through the web-based script editor - Debugging - [ ] [[See request and response headers and bodies on single iteration]] - Variables (JSON, Regex, CSS selector) allowed, but no way to view response body or test them. - [x] [[Transaction groups]] - Through the web-based script editor, not in UI #### Making the script realistic - [ ] [[Correlation of dynamic values]] - [x] [[Pass variables in request]] - [x] [[Dynamic think time and pacing]] - Through the web-based script editor ### Execution #### [ ] [[Test Scenarios]] #### [x] [[Configurable Load profile]] - ![](assets/1621807217_1.png) - [x] [[Number of virtual users]] - [x] [[Duration]] - [x] [[Origin or Region]] - [x] [[Fully customizable load profile]] - Through the web-based script editor - [x] [[Ramp-up]] - Through the web-based script editor - [x] [[Ramp down]] - Through the web-based script editor - [x] [[Number of iterations]] - Through the web-based script editor #### [x] [[Data partitioning across load generators]] - [[k6 SharedArray]] - [[Variables in k6]] #### SLAs - [x] [[Set multiple thresholds]] - ![](assets/1621807218_2.png) #### [x] [[No shared infrastructure]] #### [ ] [[Bandwidth throttling]] #### Infrastructure - [ ] [[Control over how many users per load generator to run]] - [x] [[Self-hosted]] - [x] [[On-premise]] - [ ] [[Own cloud accounts]] - Technically, there is support for this via [[k6 Operator]], but since that's not a full integration and it's not in the UI, I'm going to say no for now. - [ ] [[AWS]] - [ ] [[Microsoft Azure]] - [ ] [[Google Cloud Platform]] - [ ] [[DigitalOcean]] - [x] [[On demand]] #### [ ] [[Multiple IP addresses]] #### [ ] [[Execution Parameters]] ### Analysis #### Dashboard - [x] [[Custom dashboard creation]] - [ ] [[Reusable dashboards]] - Easy error troubleshooting - [ ] [[Screenshots]] - [ ] [[Response bodies]] - [x] [[Assertion success or failure]] - [ ] [[Log for transaction failure]] #### Metrics - [x] [[Response time]] - [x] [[Request throughput]] - [x] [[Number of virtual users]] - [x] [[Error rate]] - [x] [[Network throughput]] - [x] [[Load generator CPU]] - [x] [[Load generator memory]] #### Graphs - [ ] [[Different Graph Types]] - [ ] [[View by transaction]] - > Here is one url for different load zones in the same chart cc [@nicole](https://loadimpact.slack.com/team/U01EUD34LLA) _(Yes they should be different colors, it’s coming soon_ - [[Simon Legander]] [[2020-12-10]] - ![](assets/1621807219_3.png) - [x] [[View by load generator or region]] - [ ] [[Custom views]] #### Comparison - [x] [[Compare two tests]] - [ ] [[Overlay results by relative time]] #### Results - [ ] [[Raw data]] - [x] [[At least 1s granularity]] - [x] [[Export as plain text]] - [x] [[Integration with APM or Data Visualization tools]] - [x] [[New Relic]] - [ ] [[Dynatrace]] - [ ] [[AppDynamics]] - [ ] [[Tableau]] - [x] [[InfluxDB]] - [x] [[Datadog]] - [x] [[CloudWatch]] - [ ] [[CA Technologies APM]] - [ ] [[Splunk Cloud]] - [ ] [[Keen]] - [ ] [[BigPanda]] ### Continuous Load Testing #### Scheduling - ![](assets/1621807220_4.png) - [x] [[Run tests on a schedule]] - [ ] [[Email results]] - [x] [[Alerts]] - Yes: https://k6.io/docs/cloud/integrations/notifications - [x] [[Slack]] - [x] [[Microsoft Teams]] - [ ] [[PagerDuty]] - [ ] [[VictorOps]] - [ ] [[OpsGenie]] - [ ] [[ServiceNow]] - [ ] [[Flowdock]] - [ ] [[Zapier]] - [ ] [[Grove]] #### [x] [[API hooks]] #### [x] [[Graph of continuous performance over time]] - ![](assets/1621807221_5.png)