AL: Added final section for Day 16
This commit is contained in:
parent
32970c7149
commit
9a0952506e
@ -447,14 +447,14 @@ Drawing inspiration from modern web development tooling and frameworks K6, we ca
|
|||||||
Code generation in particular is critical in helping developers rapidly prototype and develop tests. For example, a developer running the command
|
Code generation in particular is critical in helping developers rapidly prototype and develop tests. For example, a developer running the command
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
hedra workflow generate --using http,http2,playwright --tags service=myapi.com,environment=staging
|
hedra test generate my-test --using http,http2,playwright --tags service=myapi.com,environment=staging
|
||||||
```
|
```
|
||||||
|
|
||||||
generates the following template code:
|
generates the following template code:
|
||||||
|
|
||||||
|
|
||||||
```python
|
```python
|
||||||
|
# Generated by Hedra - my_test.py
|
||||||
import os
|
import os
|
||||||
from hedra import (
|
from hedra import (
|
||||||
Workflow,
|
Workflow,
|
||||||
@ -467,7 +467,7 @@ from hedra.core.engines import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
class Test(Workflow):
|
class MyTest(Workflow):
|
||||||
vus=1000
|
vus=1000
|
||||||
duration='1m'
|
duration='1m'
|
||||||
tags={
|
tags={
|
||||||
@ -488,3 +488,43 @@ class Test(Workflow):
|
|||||||
return await self.client.playwright.goto('<ADD_URL_HERE>')
|
return await self.client.playwright.goto('<ADD_URL_HERE>')
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
|
When combined with linting:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
hedra test lint my_test.py
|
||||||
|
|
||||||
|
Linting my_test.py...
|
||||||
|
OK!
|
||||||
|
```
|
||||||
|
|
||||||
|
project management features:
|
||||||
|
```bash
|
||||||
|
hedra test submit my_test.py --project github.com/myorg/tests
|
||||||
|
|
||||||
|
Submitting my_test.py to github.com/myorg/tests...
|
||||||
|
Repo updated!
|
||||||
|
```
|
||||||
|
|
||||||
|
And RPC remote execution:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
hedra cloud test my_test.py --send staging
|
||||||
|
|
||||||
|
Sending to - staging - cluster at 155.020.313.33:6883
|
||||||
|
```
|
||||||
|
|
||||||
|
Allows developers to focus on value delivery as opposed to maintaining a plethora of of extensions, disorganized tests, and execution environments.
|
||||||
|
|
||||||
|
<br/>
|
||||||
|
|
||||||
|
## Summing it Up
|
||||||
|
|
||||||
|
While performance frameworks are valuable tools, their inherent limitations have made them difficult to adopt and their value proposition increasingly questionable. We can build upon their strengths by:
|
||||||
|
|
||||||
|
- Facilitating simulation of realistic user interactions via workflows
|
||||||
|
- Allowing for concurrent use of multiple protocols/libraries in a single test/workflow
|
||||||
|
- Embracing statistical frameworks like A|B testing, using optimization to automate configuration, and providing protocol-level fault injection for chaos testing
|
||||||
|
- Including modern developer experience features like starter template code generation, "unified experience" CLIs, test linting, and project management
|
||||||
|
|
||||||
|
to create a new class of tooling, simulation frameworks, that both deliver upon and exceed the value proposition of performance testing frameworks.
|
Loading…
Reference in New Issue
Block a user