tdd with biztalk

Post on 17-May-2015

2.106 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

This is a presentation that I gave on doing TDD with BizTalk. It was part of a series of pre-TechEd presentations.

TRANSCRIPT

Test-Driven Test-Driven Development with Development with BizTalk Server 2004BizTalk Server 2004

Ben CareyBen Carey

What We Will CoverWhat We Will Cover

What is Test-Driven Development What is Test-Driven Development (TDD)?(TDD)?

Why should we use TDD?Why should we use TDD?

The TDD cycleThe TDD cycle

TDD for integration projectsTDD for integration projects

A TDD episode with MicrosoftA TDD episode with Microsoft®® BizTalk BizTalk®® ServerServer

Session PrerequisitesSession Prerequisites

General knowledge of BizTalk ServerGeneral knowledge of BizTalk Server

General knowledge of integration General knowledge of integration conceptsconcepts

A desire to know if your code worksA desire to know if your code works

Level 200Level 200

Test-Driven DevelopmentTest-Driven Development

Repeatable / Repeatable / automated testsautomated tests

Proving the system Proving the system for various for various scenariosscenarios

FeedbackFeedback

Incremental designIncremental design

Executable Executable documentationdocumentation

The Benefits of TDDThe Benefits of TDD

FeedbackFeedbackShort cycles to knowing what works, what’s Short cycles to knowing what works, what’s broken, and extended effects of modificationsbroken, and extended effects of modifications

FlowFlowRed, Green, RefactorRed, Green, RefactorIt feels good.It feels good.

CourageCourageHave confidence in your work and your purpose.Have confidence in your work and your purpose.

DocumentationDocumentationIt’s executable.It’s executable.

DesignDesignOrganic architectureOrganic architectureSimplicitySimplicity

The Test-Driven CycleThe Test-Driven Cycle

What do I need to do?What do I need to do?

How can I test it?How can I test it?

Write a test (or a few).Write a test (or a few).

Watch it fail.Watch it fail.

Write some code.Write some code.

Watch it pass.Watch it pass.

Refactor if necessary.Refactor if necessary.

RepeatRepeat

Test-Driven IntegrationTest-Driven Integration

Start with acceptance / integration level Start with acceptance / integration level tests.tests.

Integration tests usually take the bulk Integration tests usually take the bulk of the time (for both development and of the time (for both development and execution).execution).

Don’t worry so much about systems out Don’t worry so much about systems out of your control.of your control.

Test at a finer-grained level if it makes Test at a finer-grained level if it makes sense (layered testing).sense (layered testing).

Testing Integration ScenariosTesting Integration Scenarios

In The System Out

Test Harness

G V

Testing Within the BoundariesTesting Within the Boundaries

Company A Our System Company B

Our Test Boundary

Layered TestingLayered Testing

C

B

A

G V

G V

G V

S

S

A Test-Driven Episode - A Test-Driven Episode - ScenarioScenarioOur Scenario…Our Scenario…

We are developers at FooCorp. FooCorp has We are developers at FooCorp. FooCorp has been asked to develop a system that will been asked to develop a system that will aggregate weather data and find hazardous aggregate weather data and find hazardous mountain conditions. mountain conditions.

We need to write a system that will pull data We need to write a system that will pull data from various sources and input them into our from various sources and input them into our system so that we can do trend analysis and system so that we can do trend analysis and make predictions.make predictions.

A Test-Driven Episode – Story A Test-Driven Episode – Story #1#1

Story: Consume MesoWest dataStory: Consume MesoWest data

DemonstrationDemonstration

Test-Driven BizTalkTest-Driven BizTalk

Session SummarySession Summary

Discussion of what TDD really isDiscussion of what TDD really is

Some key benefits of using TDDSome key benefits of using TDD

The test-driven cycleThe test-driven cycle

Using TDD for integration projectsUsing TDD for integration projects

Demonstration of TDD with BizTalkDemonstration of TDD with BizTalk

For More InformationFor More Information

Agile EAIAgile EAIhttp://www.eaipatterns.com/docs/http://www.eaipatterns.com/docs/agileEAI.htmlagileEAI.html

Test-Driven Development in Enterprise Test-Driven Development in Enterprise Integration ProjectsIntegration Projects

http://www.hohpe.com/Gregor/Work/docs/ http://www.hohpe.com/Gregor/Work/docs/ TestDrivenEAI.pdfTestDrivenEAI.pdf

www.testdriven.com www.testdriven.com

Additional ResourcesAdditional Resources

Framework for Rapid Test Case Framework for Rapid Test Case DevelopmentDevelopment

http://www.gotdotnet.com/workspaces/ http://www.gotdotnet.com/workspaces/ workspace.aspx?id=8353c433-5b5c-464d-workspace.aspx?id=8353c433-5b5c-464d-9605-bd4220686850 9605-bd4220686850

NUnitNUnithttp://www.nunit.org/ http://www.nunit.org/

Questions and AnswersQuestions and Answers

Submit text questions using the “Ask a Submit text questions using the “Ask a Question” button. Question” button. Don’t forget to fill out the survey.Don’t forget to fill out the survey.For upcoming and previously live For upcoming and previously live webcasts: webcasts: www.microsoft.com/webcasts www.microsoft.com/webcasts

Got webcast content ideas? Contact us Got webcast content ideas? Contact us at: at: http://go.microsoft.com/fwlink/?http://go.microsoft.com/fwlink/?LinkId=41781LinkId=41781

Today's webcast was presented using Today's webcast was presented using Microsoft Office Live Meeting. Get a Microsoft Office Live Meeting. Get a free 14 day trial free 14 day trial http://www.microsoft.com/presentlivehttp://www.microsoft.com/presentlive  

Where Can I Get MSDN?Where Can I Get MSDN?Fill out the survey at the end of the Fill out the survey at the end of the webcast and ask a Microsoft webcast and ask a Microsoft representative to contact you.representative to contact you.

Become an MSDN CD Subscriber at Become an MSDN CD Subscriber at msdn.microsoft.com/subscriptionsmsdn.microsoft.com/subscriptions

Listen, learn and rub elbows with the brightest developers in your area. Our free MSDN Event series is your perfect opportunity to brush up on the latest tools and advanced technologies you’ll need to develop innovative, new applications. Join a MSDN Developer Community Champion for a live presentation and a Q & A session that will take your skills to the next level. These technical specialists are real coders with real experiences, not just traveling salespeople with PowerPoint®. If they cannot answer your questions, they can find someone who can.

Register at http://msdnevents.com or call 1-877.673.8368

Attend an MSDN Event in your local area and receive the MSDN Event Resource DVD

Winter DVD* includes:

• Session Materials, including Code Samples, Slides and Video Recordings

• SQL Server 2005™ Beta 2 • Visual Studio® 2005 Express

Beta Products (C#, Visual Web Developer, Visual Basic® .NET)

• Visual Studio 2005 Beta 1 Refresh with Visual Studio 2005 Team System

• Virtual PC 2004 45-day Trial Edition

• Patterns & Practices Library • 35% Off Select Microsoft

Press® Titles

IAB Poll

How would you rate the streaming audio quality from today’s presentation?

ExcellentGoodFairPoorUnacceptableNeeded to listen to the audio via telephony

Live Meeting Poll

Changes directly made to this slide will not be displayed in Live Meeting. Edit this slide by selecting Properties in the Live Meeting Presentation menu.

top related