Home > Ask the SOA Experts > SOA testing and QA Questions & Answers > Integration testing
Ask The SOA Expert: Questions & Answers
EMAIL THIS

Integration testing

Rami Jaamour EXPERT RESPONSE FROM: Rami Jaamour

Pose a Question
Other SOA Categories
Meet all SOA Experts
Become an Expert for this site


Digg This!    StumbleUpon Toolbar StumbleUpon    Bookmark with Delicious Del.icio.us   


>
QUESTION POSED ON: 23 April 2007
What constitutes integration and when should I look to do it? Early or late in the development process?

>

Web services and SOA bring in a very important, but understated trend to the IT world: complexity. It is creeping up from the application code out to the architecture. Services are reused, transactions are orchestrated at the message layer, and runtime policies manipulate meta-data content in messages and sometimes route them them accordingly. These are all factors where we see complexity manifest itself outside of the individual application. This trend reinforces "architecture first" development paradigms where the system is created first, and application code second.

Integration has been a major source of problems and will continue to be so when left till the end of the development cycle. Therefore, it is important to start with a development environment that is as close to the production environment as possible, with builds created at a regular (typically nightly) basis and deployed, integrated into the development system. When this is achieved, it becomes possible to build and maintain regression test cases against the system so the tests can be created, grown and maintained with the system as it evolves. Such tests would have the capacity to be as realistic to the real use case scenarios as possible, because they are running against a pre-deployment system that is close to the final product, which makes them even more powerful in making sure bugs are not introduced and for functional correctness to be maintained throughout the development cycle.

A major challenge to achieving this process is isolating an application in development within an environmental context that resembles the product context. Stubbing and emulation is needed here, which requires some initial work to be done. However, such initial efforts pay off in the long term because you end up with an agile, continuous process where changes can be made and builds are immediately tested and verified. The system actually becomes testable, which is an important trait before it is deployed. Only that approach makes the process predictable and controlled so that you can move ahead with the project knowing that there is minimized room for surprises at the end.

So in summary, integration testing should be done early, and side by side with the other kinds of testing (e.g. unit testing). If the application is not testable with such an approach then something is wrong. An investment should be made in the beginning to make it testable. Development teams would find themselves wasting a great amount of time with manual build and deploy activities if the system is not integration-testable, and that would only get worse when that happens towards the end of the project.


Digg This!    StumbleUpon Toolbar StumbleUpon    Bookmark with Delicious Del.icio.us   



RELATED CONTENT
SOA testing and QA
Emulating systems
Building a testing system for SOA
The business side of SOA testing processes
QA tests for BPM
BPM testing
Regression testing explained
Business process testing and simulation for optimized BPM
Service emulation pitfalls
Unit testing for SOA best practices
No testing tool for a jPDL Process

RELATED RESOURCES
2020software.com, trial software downloads for accounting software, ERP software, CRM software and business software systems
Search Bitpipe.com for the latest white papers and business webcasts
Whatis.com, the online computer dictionary



Search and Browse the Expert Answer Center
Search and browse more than 25,000 question and answer pairs from more than 250 TechTarget industry experts.
Browse our Expert Advice



SOA Governance White Papers - BPM, EDA, IT Governance
About Us  |  Contact Us  |  For Advertisers  |  For Business Partners  |  Site Index  |  RSS
SEARCH 
TechTarget provides technology professionals with the information they need to perform their jobs - from developing strategy, to making cost-effective purchase decisions and managing their organizations' technology projects - with its network of technology-specific websites, events and online magazines.

TechTarget Corporate Web Site  |  Media Kits  |  Site Map




All Rights Reserved, Copyright 2001 - 2009, TechTarget | Read our Privacy Policy
  TechTarget - The IT Media ROI Experts