+ All Categories
Home > Documents > ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge...

ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge...

Date post: 30-Jan-2016
Category:
Upload: gregory-powell
View: 216 times
Download: 0 times
Share this document with a friend
43
ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger & Pheona Job [email protected] ptj@smat- consulting.com
Transcript
Page 1: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

ARCH-12: QA considerations for applications following the OpenEdge

Reference Architecture

SMAT-Team Tobago

Thomas Hutegger & Pheona Job

[email protected] [email protected]

Page 2: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

Agenda

➔ Overview of OpenEdge Reference Architecture

• Overview of WebSpeed Architecture

• Using ProDataSets in WebSpeed

• Examples of tests for various layers

Page 3: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

OpenEdge Reference Architecture

Data accessabstracted from

storage

Common business logic with

advanced models

Separated presentationand integration layers

OERA

Page 4: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

Goals For This Session

Seeds of Thought:

• Layered architecture facilitates layered testing

• OpenEdge Reference Architecture and ProDataSet relevant for WebSpeed

• Ideas about how to implement layered testing

More details in white-paper on PSDN...

Page 5: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

OpenEdge Reference Architecture Check

• Who is using ProDataSets?

• Who is using OpenEdge Reference Architecture?

• Who is using ProDataSets and OpenEdge Reference Architecture?

Page 6: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

ProDataSets Implementing The OpenEdge Reference Architecture

Server Data Access Object

Business Entity

ClientGUI Procedure

OERA

DB

Page 7: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

ProDataSets Implementing The OpenEdge Reference Architecture

Server

Data Access Object

Business Entity

ClientGUI Procedure

OERA

DB

Page 8: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

GUIProcedure

OpenEdge Reference Architecture

Validations

Server

DataAccessObjectxxdo.p

BusinessEntityxxbe.p

Super

Save

Get

C/S

DB

Client

Page 9: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

Procedure Call Flow – Display DataG

UI

Cli

ent

BE

DO

attachDS<DataSet>

fill<DataSet>

detachDS

prepare<DataSet>

Call Flow

DB

Page 10: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

Procedure Call Flow – Update Data

GU

I C

lien

t

BE

DO

attachDS<DataSet>

save<DataSet>Changes

detachDS

update<DataSet>

Changes are stored in original dataset

changes<Dataset>created containingonly beforeImageTT and relatedregular TT-records

Call Flow

DB

Page 11: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

Testing ProDataSet Per Layer

GU

I C

lien

t

BE

DO

attachDS<DataSet>

save<DataSet>Changes

detachDS

update<DataSet>

attachDS<DataSet>

fill<DataSet>

detachDS

prepare<DataSet>

test-dos.p test-bes.p

Call Flow

DB

Page 12: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

Testing Layers

Server Data Access Object

Business Entity

ClientGUI Procedure

OERA

DB

Page 13: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

Agenda

✔ Overview of OpenEdge Reference Architecture➔ Overview of WebSpeed Architecture

• Using ProDataSets in WebSpeed

• Examples of tests for various layers

Page 14: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

WebSpeed Check

• Who is using WebSpeed?

Page 15: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

WebSpeed Architecture

Web Server(Apache) Agent

Progress

ServerBrowser(Opera)

Client

IntranetInternet

C/S

DB

Page 16: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

WebSpeed Round Trip

Agent

Read Datafrom Page

Save Datato DB

Get Data from DB

Create NextHTML Page

Name-ValuePairs

HTML

Web

-Ser

ver

C/S

DB

Page 17: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

Complexities with WebSpeed

• Non-4GL expertise needed (HTML,JavaScript,...)

• Testing/Debugging– White screen (severe error, server-log)– Restart of Agents (to pick up changed programs)

• “Stateless” client– context management– Flat character-only data-structure (name-value pairs)

Page 18: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

Tasks of Framework

• Converts name-value pairs into temp-table

• Requires data for HTML page in temp-tables

• Merges data with HTML page template (plain text)

• Sends merged page to web-stream (i.e. WebServer)

• ... or to a file (for testing purposes)

Page 19: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

Framework

Agent

Read Datafrom Page

Save Datato DB

Get Data from DB

Create NextHTML Page

Name-ValuePairs

HTML

Web

-Ser

ver

Fram

ewor

k

HTML saved in plain OS text file

Provide Name-ValuePairs Temp-Table

Sim

ulat

ing

Tes

t Pro

gram

X

X

C/S

DB

Page 20: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

Agenda

✔ Overview of OpenEdge Reference Architecture Architecture

✔ Overview of WebSpeed Architecture➔ Using ProDataSets in WebSpeed

• Examples of tests for various layers

Page 21: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

OpenEdge Reference Architecture with WebSpeed Check

• Who is using ProDataSets with WebSpeed?

• Who is using OpenEdge Reference Architecture with WebSpeed?

• Who is using ProDataSets and OpenEdge Reference Architecture with WebSpeed?

Page 22: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

OpenEdge Reference Architecture

Data accessabstracted from

storage

Common business logic with

advanced models

Separated presentationand integration layers

OERA

Page 23: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

WebSpeed Implementing The OpenEdge Reference Architecture

Data Access Object

Business Entity

Agent Read DataFrom Page

DB

Create Next HTML Page

Web-Server

OERA

Page 24: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

OpenEdge Reference Architecture with WebSpeed

Client

GUIProcedure

Validations

Server

DataAccessObjectxxdo.pBusiness

Entityxxbe.p

Super

WebSpeedClient(PPO) Save

Get

Bro

wse

r

Web

-Ser

ver

Save

Get

C/S

DB

Page 25: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

Procedure Call Flow – Prepare Page

PP

O

BE

DO

Request Page attachDS<DataSet>

fill<DataSet>

detachDS

prepare<DataSet>

Return HTML

Call Flow

DB

Page 26: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

Issues With WebSpeed

• Did record change since page was prepared?– Additionally sending complete record to page

• So it can be retrieved as “before image” record

– Using “version” field

• Total disconnect between preparing page and next post– ProDataSet content lost– No before-image temp-table possible– Standard ProDataSet update feature can't be used

Page 27: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

OpenEdge Reference Architecture and ProDataSets with WebSpeed

Client

GUIProcedure

Validations

Server

DataAccessObjectxxdo.pBusiness

Entityxxbe.p

Super

WebSpeedClient(PPO) Save

Get

Bro

wse

r

Web

-Ser

ver

Save

Get

C/S

DB

Page 28: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

OpenEdge Reference Architecture and ProDataSets with WebSpeed

Client Server

Super

Save

Get

Web Libraryxxwb.pB

row

ser

Web

-Ser

ver

Super

Save

Get

C/S

GUIProcedure

Validations

DataAccessObjectxxdo.p

BusinessEntityxxbe.p

WebSpeedClient(PPO)

DB

Page 29: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

OpenEdge Reference Architecture and ProDataSets with WebSpeed

Client Server

Super

Save

Get

Web Libraryxxwb.p

Bro

wse

r

Web

-Ser

ver

Super

Save

Get

C/S

GUIProcedure

Validations

DataAccessObjectxxdo.pBusiness

Entityxxbe.p

WebSpeedClient(PPO)

DB

Page 30: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

Call Flow – Save and Prepare Page

Pag

e P

roce

ssin

g O

bjec

t WB

Post Page

attachDS<DataSet>

fill<DataSet>

detachDS

prepare<DataSet>

Return HTML

saveTt<Page>Save

BE

Val

idat

eD

O

Super

SupersavePd<Page>Save

test-ppos.p

test-bes.p test-dos.p

test-wbs.p

Call Flow

DB

Page 31: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

Agenda

✔ Overview of OpenEdge Reference Architecture Architecture

✔ Overview of WebSpeed Architecture✔ Using ProDataSets in WebSpeed➔ Examples of tests for various layers

Page 32: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

Testing the Data Access Object

Post Page

attachDS<DataSet>

fill<DataSet>

detachDS

prepare<DataSet>

Return HTML

saveTt<Page>Save

Super

Super

Pag

e P

roce

ssin

g O

bjec

t WBsavePd<Page>Save

BE

Val

idat

eD

O

DB

test-dos.p

Call Flow

Page 33: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

Test-dos.p

Report Results

Call DO

Run DO

Page 34: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

Pag

e P

roce

ssin

g O

bjec

t WB

BE

Val

idat

eD

O

DB

Testing the Business Entity Object

Post Page

attachDS<DataSet>

fill<DataSet>

detachDS

prepare<DataSet>

Return HTML

saveTt<Page>Save

Super

SupersavePd<Page>Save

test-bes.p test-dos.p

Call Flow

Page 35: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

Test-bes.p

Call BE

Report Results

Page 36: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

Pag

e P

roce

ssin

g O

bjec

t WB

BE

Val

idat

eD

O

DB

Testing Web Object

Post Page

attachDS<DataSet>

fill<DataSet>

detachDS

prepare<DataSet>

Return HTML

saveTt<Page>Save

Super

SupersavePd<Page>Save

test-wbs.p

test-dos.ptest-bes.p

Call Flow

Page 37: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

Test-wbs.p Run WB

Prepare Data

Call WB

Page 38: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

test-wbs.p (cont.)

Report Results

Page 39: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

Pag

e P

roce

ssin

g O

bjec

t WB

BE

Val

idat

eD

O

DB

Testing Page Process Object

Post Page

attachDS<DataSet>

fill<DataSet>

detachDS

prepare<DataSet>

Return HTML

saveTt<Page>Save

Super

SupersavePd<Page>Save

test-ppos.p

test-dos.ptest-bes.p

test-wbs.p

Call Flow

Page 40: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

Test-ppos.p Start Framework

Simulate 1 Page

Page 41: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

Goals For This Session

Seeds of Thought:

• Layered architecture facilitates layered testing

• OpenEdge Reference Architecture and ProDataSet relevant for WebSpeed

• Ideas about how to implement layered testing

More details in white-paper on PSDN...

Page 42: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

Questions?

Page 43: ARCH12: QA Considerations - OERA ARCH-12: QA considerations for applications following the OpenEdge Reference Architecture SMAT-Team Tobago Thomas Hutegger.

ARCH12: QA Considerations - OERA

Thank you

www.smat-consulting.com

[email protected] [email protected]


Recommended