• View

  • Download

Embed Size (px)





2. EDITORS LETTER1 Testing in the new worlds of SOA and agile p UNLESS YOU LIVE in a sci-fi novel,Karen N. Johnson in Agile testing a theres one rule of thumb for any new strategies: Evolving with the product.EDITORS LETTERplace you go: some things are differ- Agile is a more collaborative process ent; some are the same. Usually, suc- and calls for seizing iterations as a cess, fun or survival in that new place chance to evolve test ideas, Johnson a depends upon how well you handlewrites. Fundamental testing tasks, likeCHAPTER 1 A SOA VIEWthe differences. In this issue of exploratory and investigative testing, OF TESTINGSearchSoftwareQuality.coms Soft- stay the same, but the productivity of ware Testing E-Zine, the new places completing those jobs can increase. are a service-oriented architecture Johnson and Kelly discuss the finer a (SOA) and an agile software develop-points of testing in agile and SOA,CHAPTER 2 AGILE TESTING ment environment. respectively, in this issues articles. STRATEGIES: EVOLVING Examining the ins and outs of soft-They also describe revelations theyve WITH THE PRODUCT ware testing in SOA environments in had while working in those environ- An SOA view of testing, consultantments and best practices theyve Mike Kelly focuses on the subtle dif-learned and continue to use. ferences. Whats the same is thatThe theme of connectivity runs testers here must start with thethrough these discussions of SOA and basics. In SOA, the basics are connec-agile testing, as the former focuses on tivity, basic capacity, and authoriza-system connectivity and the latter on tion and authenticationnot that dif- human collaboration. Both approach- ferent from other environments. The es, when done well, can help develop- level of complexity of data models, ment and IT organizations achieve however, is very different from that of lower costs and better software. I other architectures and requires some new methods of testing. JAN STAFFORDWhile agile development requires Executive Editor different testing methods than waterfall model, those differences lie as much in human behavior as in technology, according to consultant 2 SOFTWARE TESTING MAY/JUNE 2009 3. CHAPTER 11 A SOA view of testingThe complexity of a service-oriented architecture cancomplicate testing and make choosing and implementingthe right testing tools more difficult. BY MICHAEL KELLY aEDITORS LETTERp SERVICE-ORIENTED architecturestest. This means people testing SOA (SOAs) are stealthily becoming ubiq-need to be comfortable with varied uitous. Large and small enterprises and changing technology, need to a leverage them to integrate wide understand the various models forCHAPTER 1 A SOA VIEWarrays of disparate systems into aSOA, and should be familiar with OF TESTING cohesive whole. Most companies andthe risks common to SOA. project teams that implement SOA do so to reduce the cost, risk and difficul- a ty of replacing legacy systems, acquir- WHY SERVICE-ORIENTEDCHAPTER 2 AGILE TESTING STRATEGIES: ing new businesses or extending the ARCHITECTURES? EVOLVINGlife of existing systems. Large companies typically turn to WITH THE PRODUCTTesting a SOA requires a solid SOA because their existing systems understanding of the SOA design and cant change fast enough to keep up underlying technology. Yet, SOAs with the business. Because business complexity makes figuring out the operations dont exist in discrete or functional purpose of the SOA diffi-finite units, there are a lot of depend- cult and choosing and implementingencies built into existing systems. the right testing tools and techniquesSOA is an attempt to separate the to use with it more difficult.system from the business operationsSOA is not simply Web supports. This allows companies to According to iTKO (the makers of theincrementally build or decommission TechTarget award-winning SOA test-systems and minimizes the impact of ing tool LISA), nine out of 10 Webchanges in one system to changes in services also involve some other type another. of technology. In addition, they state Implementing a SOA removes that most testing for SOA isnt donethe requirement of direct integration, at the user interface level. Its donewhich results in business operations using either specialized tools or asthat are easier to understand. That part of an integration or end-to-endtranslates into a more testable system 3 SOFTWARE TESTING MAY/JUNE 2009 4. overall. Over time, this makes itdards such as application-oriented easier to support a broader technolo-networking (AON), WS-Security, gy base, which in turn makes it easier SAML, WS-Trust, WS-SecurityPolicy, to acquire and integrate new systems,or other custom security schemes for extend the life of existing systemsdata security as well as authorization and replace legacy systems.and authentication.There are a number of different model architectures for implementing ILoad balancing: SOAs are often SOA, including publish and subscript designed to spread work between (often called pub/sub), requestresources to optimize resource and reply, and synchronous versusutilization, availability, reliability asynchronous. In addition, they canand performance. a be implemented in a broad rangeEDITORS LETTERof technologies, including message-I Translation: As data moves oriented middleware (MOM), through a SOA, its often converted simple HTTP posts with DNS routing,or changed based on business rules a Web services, MQ series, JMS (or or reference data.CHAPTER 1 A SOA VIEWsome other type of queuing system) OF TESTINGand even files passed in batch ILogging: For monitoring and processes. auditing, SOAs often implementIf youre testing a SOA you needmultiple forms of logging. a to understand the implementationCHAPTER 2 AGILE TESTING model and technologies involved, I Notification: Based on the model STRATEGIES: EVOLVINGbecause these typically combine to of SOA implemented, different notifi- WITH THE PRODUCT give you some common features of cations may happen at different a SOA. These features often become times. a focal point for your testing. They commonly include:IAdapters: Adapters (both customand commercial) provide APIs to I Transformation and mapping:access data and common functions As data moves through a SOA, itswithin a SOA. often transformed between data formats and mapped to various standard or custom data schemes. FIGURING OUT WHAT TO TESTThe first thing you need to do when I Routing: The path informationyou start figuring what to test for your takes as it moves through a SOASOA is to develop (or start develop- is often based on business rules ing) your test strategy. When Im embedded at different levels offaced with a new project and Im not the architecture.sure where to start, I normally pullout the Satisfice Heuristic Test Strate- I Security: SOAs often use stan- gy Model and start there. Each sec- 4 SOFTWARE TESTING MAY/JUNE 2009 5. Feeling theAgile Rush?7 Test FasterWith TestComplete The Easiest7 TestComplete Ever! Agile development moves fast, too fast for manual testing alone. In an agile environment you need automated testing tools to succeed. Check out TestComplete from AutomatedQA. TestComplete lets anyone automate tests for the widest range of technologies like Web, Ajax, Windows, .NET, Java, Flash, Flex and Silverlight. TestComplete has won four Jolt awards, been voted Best Testing ToolScript-Free Test Creation and yet it's still a ordable.Simple to learn and easy to extendTestComplete's extensive feature set and Download and Customize ExtensionsPre-built and custom add-ons make great price has long made it the choice ofcomplex tests point and click easy expert testers. Now version 7 adds script-free test creation and a simpli edUnmatched Technology Support user interface so new testers can getNew technology? No problem! Rapid productive fast. TestComplete 7's easy support for the latest software automated testing lets your entire QA teamPrice and Performance Leader test more, test faster and ship on time with Unsurpassed features and a low price con dence. to make you smile. Start Testing In Minutes!Download TestComplete now and starttesting today. DownloadTestCompleteFREEAutomatedQA 236-7900 6. tion of the Satisfice Heuristic TestI Project environment: What fac- Strategy Model contains things youll tors will be critical to your success need to consider as you think about and the success of the in-house team your testing: as you take over this work? How will you take in new work, structure your I Test techniques: What types ofrelease schedules, or move code testing techniques will you be doing? between teams, phases or environ- What would you need to supportments? What are the business drivers those types of testing in terms ofto moving to a SOA and how will people, processes, tools, environ-those come into play while youre ments or data? Are there specific testing? things you need to test (like security, a transformation and mapping, or loadRecognize that as you think ofEDITORS LETTERbalancing) that may require special-these questions, its a matrix of con- ized techniques?cerns. A decision (or lack of decision) in each of these categories affects the a I Product elements: What productscope of the decisions in the otherCHAPTER 1 A SOA VIEWelements will you be covering in your three. Therefore, you will most likely OF TESTINGtesting? Whats your scope? To what find yourself approaching the problem extent will different data elements befrom different perspectives at differ- covered in each stage? Which busi-ent times. a ness rules? Will you be testing theOnce you have an understandingCHAPTER 2 AGILE TESTING target implementation environment?of what features youll be testing and STRATE