220 likes | 395 Views
GITB | http://www.ebusiness-testbed.eu. The GITB Testing Framework. Jacques Durand, Fujitsu America | JDurand@us.fujitsu.com. December 1, 2011. Overview. Objectives of a “ Global ” e-Business Test Bed Testing Scenarios Aspects of a Testing Framework. Some Objectives.
E N D
GITB | http://www.ebusiness-testbed.eu The GITB Testing Framework Jacques Durand, Fujitsu America | JDurand@us.fujitsu.com December 1, 2011
Overview • Objectives of a “Global” e-Business Test Bed • Testing Scenarios • Aspects of a Testing Framework
Some Objectives • Promote and Facilitate Adoption of eBusiness Standards • Testing is key to standards quality & adoption • Global standards need a Global Test Platform / Practices • A Common & Global Testing infrastructure for eBusiness Standards • Addressing the needs of various stakeholders • Designed and used/reused globally and across industries
Testing the e-Business Stack Business Documents Meta-Data : Interfaces, Agreements Business Process/ Exchange Choreography. Messages Messaging protocol Combination of standards / profiles Integrated testing
Test Bed Objectives • A Test Bed platform agnostic to eBusiness standards • Extensible: Plug-in Components • Test suite Engine(s) , Message Adapters (AS4, ebMS2, etc.), Document Validators • Portable Test Artifacts across Test Beds • Standardized Test Suites, Configurations, Test Logs … • Test Registry/Repository archive / publish / download • Versatile Test Bed • Test Bed can simulate a business party (interaction) • Or just analyze captured exchanges (validation) • Both for Conformance and Interoperability Testing
Overview • Objectives of a “Global” e-Business Test Bed • Testing Scenarios • Aspects of a Testing Framework
Test Scenario 1: Document Conformance • Creating & Using a “Validating” Conformance Test Suite for Structural & Semantic Validation of Business Documents • Human-driven Test Registry / Repository Query existing Test Cases Service Interface GITB-compliant Test bed “Validating” Test Suite Create / Deploy New Test Suite Test Designer Document Validator Document Validator Test Case Service Interface Document Assertion Set (DAS) • Use Test Suite • Upload Documents Test Participant Get test Report Business Documents
Test Scenario 2: Document + Message Conformance • Creating & Using an “Interacting / Validating” Conformance Test Suite [Messaging protocol + QoS + Document] • Reusing the “Validating” Suite of Scenario #1 GITB-compliant Test bed SUT GITB Test Repository [SUT] Interacting & Validating Test Suite Test Case Create / Deploy Interacting Test Suite Service Interface Validating Test Suite For Document Validation Document Validator Document Validator Validating Test Case • Execute • Get Conformance Test Report
Test Scenario 2 Variant (a): delegating to another Test Bed SUT GITB-compliant Test bed Interacting / Validating Test Suite Test Case Get Conformance Test Report Service Interface Delegates Document Validation to Service Interface Create / Deploy Interacting Test Suite GITB-compliant Test bed Validating Test Suite For Document Validation Document Validator Document Validator Validating Test Case GITB Test Repository
Test Scenario 2 Variant (b): separating the SUT interaction from the analysis (validation) 2-Phase Testing (or pipe-line) Test Report Test bed Test bed drive Interacting Test Suite Test Execution Log SUT Validating Test Suite capture
Test Scenario 3: Document + Message + Process Interoperability Creating & Using an Interoperability Test Suite (driving several SUTs) SUT 2 SUT 1 • Drive • Capture • Drive • Capture • Register • Get Status • Get Notified • File Issues GITB-compliant Test bed • Register • Get Status • Get Notified • File Issues Interacting / validating Test Suite Service Interface Create / Deploy Interacting Test Suite Validating Test Suite
Overview • Objectives of a “Global” e-Business Test Bed • Testing Scenarios • Aspects of a Testing Framework
Testing Framework in Action Remote Test Bed / Test Agent System Under Test GITB Test Bed • Test Bed Components • User-facing components • Core Platform components • Test Capability components Test Registry & Repository Implement / process Control Enable • Test Services • Test Design • Test Deployment • Test Execution • Test Repository • Test Artifacts • Test Logic (T.Suite…) • Test Configurations • Test Outputs (report..) Manage System Under Test Test Designer Test Participant Test Manager
Three Major Categories of Test Artifacts • Test Logic Artifacts (define testing logic) • Test Suites/Cases, Document Assertions… • Test Configuration Artifacts (parameters and bindings for Test Logic) • Mesg Adapters, Timing/Tuning, Message samples… • Test Output Artifacts (products of a Test run) • Test Report, Test Logs Depend on eB. Standards Depend on User Environment Depend on SUT behavior
Test Logic Artifacts • A logical test unit to verify : • A business document • A business transaction • A message Test Suite Test Case Document Validator Test Case Document Assertion Set Test Case • A set of processable requirements on a document: • schema • rules • dependencies Test Configuration
Test Artifact Standardization • Standardizing Test Artifacts: how far? • Not enough lack of portability and reusability • Too much too rigid to evolve, may not fit all tests • Level 1: Only standardize the header (metadata) • Allows for storage, tagging and search. • Level 2: L1 plus some integration features: • References or interfaces to other artifacts / capabilities • Container elements (e.g. message wrapper in a log) • Level 3: Whole content standardization • e.g. XML schema.
Test Services • Standardized Access • Hide Test Bed specifics (e.g. legacy test beds) TestBed A Service Interfaces Test Designer Test Repository TestBed B Service Interfaces Test Participant Service Interfaces
Test Services • Reuse of Testing Capabilities (e.g. Test Beds) System Under Test TestBed B TestBed A Test Suite HL7 document validation Test Suite HL7 Transactions + messaging Service Interfaces Service Interfaces Test Participant Delegation of document validation
Test Services • Test Design service: to manage Test Artifacts lifecycle in a Test Bed • Create/Update/Delete local to a testBed. • Test Deployment service: to prepare for execution: • Add Configuration to Test logic (bindings) • Test Execution service: to control all operations of a Test Bed related to Test execution. • Test Repository service: to archive, publish, discover Test Artifacts.
Test Bed Architecture Full Test Bed Operational Platform Test Capability Components (plug-ins) Document Assertions User-facing Components Test Suite AS4 Test Artifacts Persistence Mgr Test report Test report Test report Test Suite Engine Test Design Service Test Suite Engine Test Bed Core Platform Test Suite Instantiator Test Deployment Mgr Test Control Mgr Test Suite/Case Editor Test Deployment Service Document Validator Document Validator Test Operation Mgr Management Console Messaging Adapter Test Execution Service Repository Client Test Agent Client Test RegRep Service Registry/Repository Test bed
GITB Compliance Levels • How does a Test Bed comply with GITB recommendations? • GITB-Framework Compliance • Test Bed designed in compliance with GITB recommendations • Test Services interfaces, Test Artifacts, allow for plug-in Components • GITB-Service Compliance • Adding [GITB] Test Service interfaces to “Legacy” Test Beds • Produce [GITB] Test Reports
Testing Modes for AS4 Driven Conformance Tests Test Driver & Analyzer MSH Under Test Interacting T.Suite Validating T.Suite 2-Phase Conformance Tests MSH Under Test MSH Under Test Formatted log Test Analyzer PModes Validating T.Suite