Browse Source

add test params

main
Nicolas Massé 5 years ago
parent
commit
1bde360c17
  1. 28
      lib/keycloak.js
  2. 9
      login.js
  3. 9
      refresh-token.js
  4. 9
      tokeninfo.js
  5. 10
      userinfo.js

28
lib/keycloak.js

@ -28,7 +28,31 @@ const configEnvVars = {
"name": "sessionCount",
"type": "int",
"mandatory": false,
"default": 100
"default": 1000
},
"VU_COUNT": {
"name": "vuCount",
"type": "int",
"mandatory": false,
"default": 10
},
"TEST_DURATION": {
"name": "testDuration",
"type": "string",
"mandatory": false,
"default": "5m"
},
"RAMPUP_DURATION": {
"name": "rampupDuration",
"type": "string",
"mandatory": false,
"default": "30s"
},
"SETUP_TIMEOUT": {
"name": "setupTimeout",
"type": "string",
"mandatory": false,
"default": "1h"
},
};
@ -54,7 +78,7 @@ export function getTestConfig() {
if (params.mandatory) {
throw new Error(`Please set the ${env} environment variable`);
}
if (params.default) {
if (params.default != null) {
value = params.default;
}
}

9
login.js

@ -2,16 +2,17 @@ import { check } from 'k6';
import { pickRealm, pickClient, pickUser, getTestConfig, wrapWithErrorCounting, Keycloak } from "./lib/keycloak.js";
import { randomSeed } from 'k6';
const config = getTestConfig();
export let options = {
stages: [
{ duration: "20s", target: 5 },
{ duration: "2m", target: 300 }
{ duration: config.rampupDuration, target: config.vuCount },
{ duration: config.testDuration, target: config.vuCount },
{ duration: config.rampupDuration, target: 0 },
],
noVUConnectionReuse: true,
};
const config = getTestConfig();
randomSeed(__VU);
const realm = pickRealm(config.realmCount);
let keycloak = new Keycloak(config.keycloakURL, { offlineTokens: config.offlineTokens });

9
refresh-token.js

@ -2,15 +2,16 @@ import { check, sleep } from 'k6';
import { wrapWithErrorCounting, shuffleArray, getTestConfig, setupOpenSessions, Keycloak } from "./lib/keycloak.js";
import { randomSeed } from 'k6';
const config = getTestConfig();
export let options = {
stages: [
{ duration: "20s", target: 5 },
{ duration: "2m", target: 300 }
{ duration: config.rampupDuration, target: config.vuCount },
{ duration: config.testDuration, target: config.vuCount },
{ duration: config.rampupDuration, target: 0 },
],
};
const config = getTestConfig();
randomSeed(__VU);
let keycloak = new Keycloak(config.keycloakURL, { offlineTokens: config.offlineTokens });

9
tokeninfo.js

@ -2,15 +2,16 @@ import { check } from 'k6';
import { wrapWithErrorCounting, Keycloak, getTestConfig, setupOpenSessions, pickRandom } from "./lib/keycloak.js";
import { randomSeed } from 'k6';
const config = getTestConfig();
export let options = {
stages: [
{ duration: "20s", target: 5 },
{ duration: "2m", target: 300 }
{ duration: config.rampupDuration, target: config.vuCount },
{ duration: config.testDuration, target: config.vuCount },
{ duration: config.rampupDuration, target: 0 },
],
};
const config = getTestConfig();
randomSeed(__VU);
let keycloak = new Keycloak(config.keycloakURL, { offlineTokens: config.offlineTokens });

10
userinfo.js

@ -2,15 +2,17 @@ import { check } from 'k6';
import { wrapWithErrorCounting, Keycloak, getTestConfig, setupOpenSessions, pickRandom } from "./lib/keycloak.js";
import { randomSeed } from 'k6';
const config = getTestConfig();
export let options = {
stages: [
{ duration: "20s", target: 5 },
{ duration: "2m", target: 300 }
{ duration: config.rampupDuration, target: config.vuCount },
{ duration: config.testDuration, target: config.vuCount },
{ duration: config.rampupDuration, target: 0 },
],
setupTimeout: config.setupTimeout,
};
const config = getTestConfig();
randomSeed(__VU);
let keycloak = new Keycloak(config.keycloakURL, { offlineTokens: config.offlineTokens });

Loading…
Cancel
Save