Snabbreferens

Gremlins.js Monkey-Testing Fusklapp

En snabbreferensguide för Gremlins.js: automatiserad kaos- och monkey-testning för webbappar med klickare, scrollers och mogwai-vakter.

· Publicerad

gremlins.js är ett monkey-testningsbibliotek för webbappar och Node.js som simulerar slumpmässiga användarinteraktioner.

Grundläggande användning

Körning via CDN

<script src="https://cdn.jsdelivr.net/npm/gremlins/dist/gremlins.js"></script>
<script>
gremlins.createHorde().unleash();
</script>

Anpassa horden

gremlins.createHorde()
  .allGremlins()
  .gremlin(function () {
    // Anpassad åtgärd som körs med jämna mellanrum
    document.activeElement.blur();
  })
  .unleash();

Fullständigt konfigurationsexempel

gremlins.createHorde()
  .gremlin(gremlins.species.formFiller())
  .gremlin(gremlins.species.clicker()
    .clickTypes(['click'])
    .canClick(element => element.tagName !== 'A')
    .showAction((x, y) => { /* Visuell klickindikator */ }))
  .gremlin(gremlins.species.scroller())
  .gremlin(gremlins.species.typer())
  .mogwai(gremlins.mogwais.alert())
  .mogwai(gremlins.mogwais.fps())
  .mogwai(gremlins.mogwais.gizmo().maxErrors(2))
  .unleash();

Livscykel-hooks

Synkrona Before och After

gremlins.createHorde()
  .before(function () {
    this.log('Startar körning av monkey-test');
    console.profile('gremlins');
  })
  .after(function () {
    this.log('Monkey-testning slutförd');
    console.profileEnd();
  })
  .unleash();

Asynkrona hooks

gremlins.createHorde()
  .before(function (done) {
    setTimeout(() => {
      this.log('Asynkron konfiguration slutförd');
      done();
    }, 500);
  })
  .unleash();

Artreferens (Species Reference)

Gremlins (Angripare)

  • formFiller: Fyller formulärfält (input, textarea, select) med slumpmässig giltig data.
  • clicker: Klickar slumpmässigt på aktiva element i visningsytan.
  • scroller: Rullar fönstret i slumpmässiga riktningar.
  • typer: Skriver slumpmässiga tangenter i fokuserade fält.
  • toucher: Genererar touch-gester på pekskärmar.

Mogwais (Vakter)

  • alert: Fångar och loggar anrop till window.alert.
  • fps: Övervakar bildfrekvensen (FPS) och loggar kraftiga fall.
  • gizmo: Stoppar körningen när antalet ohanterade JavaScript-fel överskrider gränsen.

Referenser

Relaterade ämnen