mirror of
https://github.com/MichaelCade/90DaysOfDevOps.git
synced 2024-12-22 21:23:13 +07:00
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
|
||||
|
||||
```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:
|
||||
|
||||
|
||||
```python
|
||||
|
||||
# Generated by Hedra - my_test.py
|
||||
import os
|
||||
from hedra import (
|
||||
Workflow,
|
||||
@ -467,7 +467,7 @@ from hedra.core.engines import (
|
||||
)
|
||||
|
||||
|
||||
class Test(Workflow):
|
||||
class MyTest(Workflow):
|
||||
vus=1000
|
||||
duration='1m'
|
||||
tags={
|
||||
@ -488,3 +488,43 @@ class Test(Workflow):
|
||||
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