JAVASCRIPT-POWERED LOADRUNNER CHRISTIAN GERDES PERFORMANCE ENGINEER LIGHTS IN LINE AB

Relevanta dokument
Ajax TruClient. Erfarenheter, tips och trix från Swedbank IT. Christian Gerdes Performance Engineer, LIGHTS IN LINE AB

Swedbank Mobile Loadtesting. LoadRunner Mobile App protocol

E12 "Evil is going on"

JavaScript in SharePoint and not just for Apps. Wictor Wilén

1ME323 Webbteknik 3 Lektion 6 API. Rune Körnefors. Medieteknik Rune Körnefors

TDP013 Node.js, JSCoverage, Mocha. Marcus Bendtsen Institutionen för Datavetenskap

Modern webbutveckling. av Robert Welin-Berger

SAS USER FORUM SWEDEN 2017 USER FORUM. SAS Viya och öppenhet en gemomgång av LUA-, Java-, Python- och REST-gränssnitten mot SAS Viya

Michael Q. Jones & Matt B. Pedersen University of Nevada Las Vegas

Att skriva till och läsa från terminalfönstret

LOG/iC2. Introduction

Karlstads Universitet, Datavetenskap 1

JAVASCRIPT. Beteende

TDDC74 Programmering: Abstraktion och modellering Dugga 2, , kl 14-16

Server-kod. TDDD80 Mobila och sociala applikationer

Schenker Privpak AB Telefon VAT Nr. SE Schenker ABs ansvarsbestämmelser, identiska med Box 905 Faxnr Säte: Borås

Kodexempel från Programmering 2 Tobias Wrigstad, Ph.D.

E12 "Evil is going on"

Tentamen PC-teknik 5 p

E03 "Day 3: 2:00 p.m 3:00 p.m"

Installation av F13 Bråvalla

Beijer Electronics AB 2000, MA00336A,

Webbteknik II. Föreläsning 5. Restless farewell. John Häggerud, 2011

Att förstå hur man konstruerar modulära program Att kunna skapa nya funktioner Att förstå hur data skickas mellan funktioner

Föreläsning 4 IS1300 Inbyggda system

E13 "Behind the Wild"

Schenker Privpak AB Telefon VAT Nr. SE Schenker ABs ansvarsbestämmelser, identiska med Box 905 Faxnr Säte: Borås

Webbplats analys emreemir.com

Introduk+on +ll programmering i JavaScript

Datasäkerhet och integritet

SERVERLESS ARCHITECTURE. är det nya svarta. CADEC 2017 Peter Larsson

"HTML5 och relaterade API:er"

TDP013. Webbprogrammering och interaktivitet. AJAX, CORS & jquery. Marcus Bendtsen Institutionen för Datavetenskap (IDA)

Det finns en handledning till kortet på hemsidan. AVR STK500.

LEX INSTRUKTION REPLIKERING UPPGRADERING

Tentamen Grundläggande programmering

HANTERING AV UPS CX

PHP-presentation Dataföreningens Open Source-nätverk

Webbplats analys akcpdistributor.de.cutestatvalue.com

2.1 Installation of driver using Internet Installation of driver from disk... 3

Labb LIVE. Exempelkod från föreläsningen. Plushögskolan Frågeutveckling inom MSSQL - SU14

L0009B. Moment. Introduktion till geografiska databaser: G:\L0009B\Allmänt\IntroGeoDB.pdf (F)

DI Studio nyheter

iphone app - Users Net2 AN1116-SE Allmänt Starta Appen

Webbregistrering pa kurs och termin

TDDC74 Programmering: Abstraktion och modellering Dugga 2, , kl 17-19

Application Note SW

Ljud och video på webbsidor

TDDIU81. Processer och trådar. Andreas Dahlberg, Jonathan Doherty, Tony Magnusson, Patrik Ottosson, Rasmus Siljedahl

Tentamen i Introduktion till programmering

Belastningstester med Visual Studio Gränssnittet

Vitec Connect. Teknisk beskrivning REVIDERAT SENAST: VITEC. VITEC Affärsområde Mäklare

Vad gör européer på dagarna? Anders Kraftling SAS-ansvarig Statistiska Centralbyrån

Laboration 6 Formulär och stränghantering övningar/uppgifter

GU / Chalmers Campus Lindholmen Tentamen Programutveckling LEU 482 / TIG167

Exemple på Tentauppgifter Webbprogrammering

MVC med Javascript och Ajax. Filip Ekberg

Webbreg öppen: 26/ /

F8 Webbteknologier 2. PHP PHP: Hypertext Preprocessor

INTRODUKTION TILL ANGULAR JS

Introduktion Schenker-BTL AB, Stab IT Beskrivning över informationsintegreringmed Schenker, metodbeskrivning version 1.

Viktig information för transmittrar med option /A1 Gold-Plated Diaphragm

1ME323 Webbteknik 3 Lek0on 6 API. Rune Körnefors. Medieteknik Rune Körnefors rune.kornefors@lnu.se

Översättning av galleriet. Hjälp till den som vill...

Grundläggande datalogi - Övning 1

E13 Behind the Wild. Dagens agenda. Cookies Context/ändra context Augmentation (förstärkning) Klassiskt arv Att låna metoder Namespaces Postludium

Fast grön WiFi/IP - router ansluten Fast orange WiFi - direkt ansluten. Blinkar orange söker WiFi anslutning Fast röd inspelning på

EDA095 JavaScript. Per Andersson. Maj 4, Lund University Per Andersson EDA095 JavaScript Maj 4, / 23

E11 "Protection" Föreläsning 11, HT2014 Säkerhet, tillgänglighet. Johan Leitet. Kurs: 1dv403 Webbteknik I

TDP013. Node.js, Mocha, Istanbul. Anders Fröberg Institutionen för Datavetenskap

Tips & Trix - Teknik Jeeves World Copyright 2011 Jeeves Information Systems AB

Retrieve a set of frequently asked questions about digital loans and their answers

Objektorienterad programmering. Fält som funktionsresultat. Mer om fält: att uppdatera ett parameterfält. Kontrast: Parametrar av primitiv typ

Support Manual HoistLocatel Electronic Locks

Om inte denna rekommendation efterföljs kan vi tyvärr inte ge några garantier för att vi kan supportera de problem som då kan uppstå.

Recitation 4. 2-D arrays. Exceptions

MySQL - testmiljöer på minuter. Thomas Johansson IT-avdelningen

Om integritet och sekretess på nätet. Stefan Ternvald, SeniorNet Lidingö,

Mutability och State. Objekt-orienterad programmering och design (DIT953) Niklas Broberg / Johannes Åman Pohjola, 2018

Börja med att kopiera källkoden till din scheme-katalog (som du skapade i Laboration 1).

Evodev AB web epost Telefon Fax

Grafisk produktion och tryckkvalitet TNM015

Några inbyggda funktioner (med resultat!) Introduktion till programmering D0009E. Föreläsning 4: Villkor och rekursion. Modulus-operatorn.

Quicksort. Koffman & Wolfgang kapitel 8, avsnitt 9

Vis it. jquery jquery används lite överallt i appen på olika sätt. Det främsta användningsområdet är vid selektering och manipulering av HTML element.

F8 Webbteknologier 2. EDA095 Nätverksprogrammering. Roger Henriksson Datavetenskap Lunds universitet

Introduktion till integrering av Schenkers e-tjänster. Version 2.0

Du skall naturligtvis visa körexempel med output där det behövs i din rapport!

GIT L0012B. Implementation av geografiska informationssystem. Information inför kursstart

Klientprogrammering mot databaser

Det finns en referensbok (Java) hos vakten som du får gå fram och läsa men inte ta tillbaka till bänken.

Överföring av filer med Zendto v 1.1. stora filer som inte kan skickas via e-post konfidentiella uppgifter som inte kan skickas via okrypterad e-post

RUTINBESKRIVNING FÖR INSTALLATION AV KAMERA

Om inte denna rekommendation efterföljs kan vi tyvärr inte ge några garantier för att vi kan supportera de problem som då kan uppstå.

12. Relationer och funktioner

Webbplats analys akcpdistributor.de.ipaddress.com

Flaxande Fågel. Introduktion. Level

Statistik från webbplatser

Services + REST och OAuth

1. Log on to the system using the user ide and password ide. 2. Copy the file /etc/ca-certificates.conf to the home directory of the user.

Transkript:

JAVASCRIPT-POWERED LOADRUNNER CHRISTIAN GERDES PERFORMANCE ENGINEER LIGHTS IN LINE AB

PRESENTATIONSRUNDA VILKA ÄR VI? HUR JOBBAR NI MED LOADRUNNER IDAG? ANVÄNDER NI JAVASCRIPT/DFE/JSON?

AGENDA LoadRunner JavaScript Engine (LR12) LoadRunner JavaScript Web/HTTP (LR12.50) Lite demo Diskussion Vad är nyttan med detta?

LOADRUNNER JAVASCRIPT ENGINE

VAD ÄR LOADRUNNER JAVASCRIPT ENGINE? Ingen ny Ajax Click and Script! Två nya funktioner i Web/HTTP (endast) Web_js_run() Exekvera JavaScript kod, spara retur värden i parameter Web_js_reset() Återställer / Nollställer context Gotya: Anropas automatiskt vid Simulate New User

AKTIVERA I RUNTIME SETTINGS

EXEMPEL FRÅN FIL web_js_run( "File=XMLHTTPRequest_sync_sample.js;", "ResultParam=param", LAST);

EXEMPEL EGEN KOD // Save the value 3 to LoadRunner parameter "Sum" web_js_run("code = myfunc(1, 2);", "ResultParam = Sum", SOURCES, "Code = var myfunc = function(x,y) { return x+y; }", ENDITEM, LAST); // Simple string manipulation web_js_run("code = myfunc('abc', 'def');", "ResultParam = ConcatStr", LAST);

EXEMPEL NEDLADDAD KOD web_reg_save_param("js_url_body", "LB=", "RB=", "Search=body", LAST); web_url("js_url", "URL=http://host/myCode.js",, LAST); web_js_run("code = eval(lr.getparam('js_url_body'));", LAST);

JAVASCRIPT -> LR API API Function Description Arguments LR.advanceParam(parameter) LR.setParam(name, value) LR.freeParam(name) LR.getParam(name) LR.log(text, level) LR.userDataPoint(name, value) Advances the specified parameter to the next value in the file. Saves a string to a parameter, creating the parameter if it does not exist. Deletes a dynamic parameter at runtime, freeing its buffer. Returns the value of the specified parameter. Logs a message. Records a user-defined data point for analysis. parameter. The name of the parameter to advance. Must be a parameter of type file or unique number. name. The name of the parameter in which to save the value. value. The value. name. The parameter name. name. The parameter name. text. The message. level. One of the following: "Error" "Warning" "Standard" "Extended" "Status" example: LR.log("text", "Error"); name. The name of the data point. Do not begin a data-point name with any of these strings: HTTP, NON_HTTP, RETRY, mic_, stream_, mms_ value. The numeric value.

ANVÄNDNINGSOMRÅDEN Konvertera data till och från olika format Base64, URL Encoding m.fl. Egna kodningar och säkerhetslösningar Stränghantering är mycket enklare i JavaScript Riktiga reguljära utryck Datumhantering Tex: Date().getTime().toString(16).toUpperCase(); // Genererar en unix timestamp i HEX kod Direkt tillgång till objekt strukturen i komplex JSON data (eval) Göra anrop med XMLHTTPRequest() Återanvända JavaScript kod logik från riktiga klienten/websidan eller andra JS från repos

LOADRUNNER JAVASCRIPT WEB/HTTP FULL BLOWN JAVASCRIPT VU

VAD DET INTE ÄR! Inte en ny Ajax Click & Script Kommer inte exekvera nerladdad JavaScript automatiskt Har inte stöd för DOM

HELT NYTT SCRIPT SPRÅK (ENDAST WEB/HTTP) JavaScript Engine från Google (V8) med EcmaScript 5 kompatibilitet Spela in och konvertera mellan Ansi C och JavaScript Stöd för Asynkrona anrop, Rendezvous Stöd för att använda Virtual Table Server (VTS) och andra databaser Auto-completion även för egen kod och egna bibliotek Ny reg find: web.regsaveparamjson() med Jpath stöd (GitHub)

STÖD FÖR JAVASCRIPT LIBRARYS Lr.loadLibrary() Laddar in en utpekad JS fil (från skriptets filer, gemensam disk, mm) Lr.require() Laddar även in hela moduler och paket

AKTIVERA VIA REGENERATE ELLER RECORDING OPTIONS (ENDAST NYA SCRIPT)

PRESTANDA? VMWare Virtual Server (8 cores 8 GB) 5000 VU med Ansi C WEB/HTTP 500 VU med Ansi C WEB/HTTP JSON DFE 50 VU med TruClient 2500 VU med JavaScript WEB/HTTP Native JSON?

LITE DEMO OM DET FUNKAR DENNA GÅNG

DISKUSSION SER NI NÅN NYTTA MED DETTA?

TACK FÖR MIG! CHRISTIAN.GERDES@LIGHTSINLINE.SE 0702-20 98 28 TEGNÉRGATAN 37, STOCKHOLM