# 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]]
- 
- [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]]
- 
- [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]]
- 
#### [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]]
- 
- [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
- 
- [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]]
- 