Skip to content

Commit d888626

Browse files
Add AzureEngine to ease execution of test plans in Azure Load Testing
Additionally, refactor octoperf and blazemeter engines to reuse logic and avoid duplication.
1 parent 5d14128 commit d888626

File tree

50 files changed

+2242
-592
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

50 files changed

+2242
-592
lines changed

.github/workflows/build.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,3 +21,4 @@ jobs:
2121
env:
2222
BZ_TOKEN: ${{ secrets.BZ_TOKEN }}
2323
OCTOPERF_API_KEY: ${{ secrets.OCTOPERF_API_KEY }}
24+
AZURE_CREDS: ${{ secrets.AZURE_CREDS }}

.github/workflows/release.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ jobs:
4343
env:
4444
BZ_TOKEN: ${{ secrets.BZ_TOKEN }}
4545
OCTOPERF_API_KEY: ${{ secrets.OCTOPERF_API_KEY }}
46+
AZURE_CREDS: ${{ secrets.AZURE_CREDS }}
4647
- name: publish to Nexus
4748
run: .github/maven-central-deploy.sh
4849
env:

docs/guide/debugging/post-processor-debugging.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,6 @@ DSL provides following methods to ease results and variables visualization and d
1111
:::
1212

1313
::: tip
14-
Remove such post processors when no longer needed (when debugging is finished). Leaving them would generate errors when loading generated JMX test plan or running the test plan in BlazeMeter or OctoPerf, in addition to unnecessary processing time and resource usage.
14+
Remove such post processors when no longer needed (when debugging is finished). Leaving them would generate errors when loading generated JMX test plan or running the test plan in BlazeMeter, OctoPerf or Azure, in addition to unnecessary processing time and resource usage.
1515
:::
1616

docs/guide/jmx.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ If you use JSR223 Pre- or Post-processors with Java code (lambdas) instead of st
3636

3737
### Run JMX file
3838

39-
jmeter-java-dsl also provides means to easily run a test plan from a JMX file either locally, in BlazeMeter (through [previously mentioned jmeter-java-dsl-blazemeter module](./scale/blazemeter#blazemeter)) or OctoPerf (through [jmeter-java-dsl-octoperf module](./scale/octoperf#octoperf)). Here is an example:
39+
jmeter-java-dsl also provides means to easily run a test plan from a JMX file either locally, in BlazeMeter (through [previously mentioned jmeter-java-dsl-blazemeter module](./scale/blazemeter#blazemeter)), OctoPerf (through [jmeter-java-dsl-octoperf module](./scale/octoperf#octoperf)), or Azure Load testing (through [jmeter-java-dsl-azure module](./scale/azure#azure-load-testing)). Here is an example:
4040

4141
```java
4242
import static org.assertj.core.api.Assertions.assertThat;

docs/guide/protocols/http/headers.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,5 +31,5 @@ testPlan(
3131
```
3232

3333
::: tip
34-
You can also use lambda expressions for dynamically building HTTP Headers, but the same limitations apply as in other cases (running in BlazeMeter, OctoPerf, or using generated JMX file).
34+
You can also use lambda expressions for dynamically building HTTP Headers, but the same limitations apply as in other cases (running in BlazeMeter, OctoPerf, Azure, or using generated JMX file).
3535
:::

docs/guide/protocols/java.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ jsr223Sampler(v -> {
7070
```
7171

7272
::: warning
73-
Using java code (lambdas) will only work with embedded JMeter engine (no support for saving to JMX and running it in JMeter GUI, or running it with BlazeMeter or OctoPerf). Use the first option to avoid such limitations.
73+
Using java code (lambdas) will only work with embedded JMeter engine (no support for saving to JMX and running it in JMeter GUI, or running it with BlazeMeter, OctoPerf or Azure). Use the first option to avoid such limitations.
7474
:::
7575

7676
`jsr223Sampler` is very powerful, but also makes code and test plans harder to maintain (as with any custom code) compared to using JMeter built-in samplers. So, in general, prefer using JMeter-provided samplers if they are enough for the task at hand, and use `jsr223Sampler` sparingly.

docs/guide/request-generation/if-controller.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ ifController(s -> s.vars.get("ACCOUNT_ID") != null,
4343
```
4444

4545
::: warning
46-
Using java code (lambdas) will only work with embedded JMeter engine (no support for saving to JMX and running it in JMeter GUI, or running it with BlazeMeter or OctoPerf). Use the first option to avoid such limitations.
46+
Using java code (lambdas) will only work with embedded JMeter engine (no support for saving to JMX and running it in JMeter GUI, or running it with BlazeMeter, OctoPerf or Azure). Use the first option to avoid such limitations.
4747
:::
4848

4949
Check [DslIfController](/jmeter-java-dsl/src/main/java/us/abstracta/jmeter/javadsl/core/controllers/DslIfController.java) and [JMeter Component documentation](https://jmeter.apache.org/usermanual/component_reference.html#If_Controller) for more details.

docs/guide/request-generation/jsr223-pre-processor.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ post(s -> buildRequestBody(s.vars), Type.TEXT_PLAIN)
5656
```
5757

5858
::: warning
59-
Using java code (lambdas) will only work with embedded JMeter engine (no support for saving to JMX and running it in JMeter GUI, or running it with BlazeMeter or OctoPerf). Use the first option to avoid such limitations.
59+
Using java code (lambdas) will only work with embedded JMeter engine (no support for saving to JMX and running it in JMeter GUI, or running it with BlazeMeter, OctoPerf or Azure). Use the first option to avoid such limitations.
6060
:::
6161

6262
::: tip

docs/guide/request-generation/loops/while-controller.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ whileController(s -> s.vars.get("ACCOUNT_ID") == null,
4646
```
4747

4848
::: warning
49-
Using java code (lambdas) will only work with embedded JMeter engine (no support for saving to JMX and running it in JMeter GUI, or running it with BlazeMeter or OctoPerf). Use the first option to avoid such limitations.
49+
Using java code (lambdas) will only work with embedded JMeter engine (no support for saving to JMX and running it in JMeter GUI, or running it with BlazeMeter, OctoPerf or Azure). Use the first option to avoid such limitations.
5050
:::
5151

5252
::: warning

docs/guide/response-processing/jsr223-post-processor.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ jsr223PostProcessor(s -> {
4141
```
4242

4343
::: warning
44-
Using this last approach is currently only supported when using an embedded JMeter engine (no support for saving to JMX and running it in JMeter GUI, or running it with BlazeMeter or OctoPerf).
44+
Using this last approach is currently only supported when using an embedded JMeter engine (no support for saving to JMX and running it in JMeter GUI, or running it with BlazeMeter, OctoPerf, Azure).
4545
:::
4646

4747
Check [DslJsr223PostProcessor](/jmeter-java-dsl/src/main/java/us/abstracta/jmeter/javadsl/core/postprocessors/DslJsr223PostProcessor.java) for more details and additional options.

0 commit comments

Comments
 (0)