The first annual Tulsa TechFest will be held on Saturday, October 14, 2006, and will feature several sessions in the scope of Test-Driven Development practices:
– Testing Objects In Isolation TDD with Mock Objects
– NUnit Extensibility
– Test Driven Development With .Net: A Primer
– Refactoring: A Primer
– Automate your User Acceptance Tests with FitNesse
– Continuous Integration
– Continuous Integration With CruiseControl.Net and NAnt
– Agile Project Experiences
The Tulsa TechFest is a free event. Visit the Tulsa TechFest 2006 website for more details.Testing Objects In Isolation TDD with Mock Objects – Jean-Paul (JP) Boodhoo
Often when people first encounter TDD, it is in the context of a trivial example that is completely non-representative of the types of projects they work on in their day to day jobs. Most applications developers work on are large manifestations of layers upon layers of indirection and business logic. How do you go about utilizing TDD to drive out the functionality of these types of application? One object at a time!! This session will discuss techniques that a test driven developer can employee to utilize TDD to test objects that may have intricate webs of dependencies.
NUnit Extensibility – Tim Rayburn
NUnit Extensibility NUnit is an immensely popular unit testing framework, but few people realize how extensible it is, allowing you to easily avoid writing repetitive code in your tests. This class will walk through the creation of a custom Asserter, and then also go over other techniques which can be used to reduce the amount of code you need to write.
Test Driven Development With .Net: A Primer – Jean-Paul (JP) Boodhoo
In this session developers will be introduced to the concepts, practices, and tools that can be utilized to start utilizing test driven development techniques. A simple example will be utilized to focus on the concepts and principles that can form the foundation for a solid grounding in TDD.
Refactoring: A Primer – Jean-Paul (JP) Boodhoo
Many people have heard of the term refactoring. Most developers practice refactoring without the knowledge that it is a named practice. This session will discuss the topic of refactoring and some non-trivial refactorings that can be exercised against enterprise code bases to allow for more readable, flexible code.
Automate your User Acceptance Tests with FitNesse – Tim Gifford
How does your team define when a feature is "done"? In this presentation, you’ll learn how to collaborate better with your business users by using the Framework for Integration Testing (FIT) and FitNesse. Discover how you can automate examples of business requirements to prove that your feature is complete.
Continuous Integration – Raymond Lewallen
The session will cover Continuous Integration using CruiseControl.Net. In this session, we will do an entire walkthough on setting up a continuous integration server. Tools that will be provided and covered are Subversion, Tortoise, NDepend, FxCop, NCover, NUnit (from TestDriven.Net), NAnt and CruiseControl.Net. We will cover each tool, what it does, why it is important and finally tying it all together into an automated build and integration process. Bring your laptop and walk away with an integration server running by the end of the session, including all the tools listed. Because of a single, small issue with running one of the tools under framework 2.0, we will be targeting framework 1.1. All tools listed are available under BSD or GPL, and are freely distributable and free to use.
Continuous Integration With CruiseControl.Net and NAnt – Jean-Paul (JP) Boodhoo
Whether you have bought into agile methodologies or not. It is hard to argue the value of having a repeatable automatable build process to streamline your development environment. This session will cover the use of CruiseControl.Net and NAnt as a good pair to introduce a continuous build process into you development environment.
Agile Project Experiences – Tim Gifford
Hear about a real world agile project – learn what worked, what didn’t and what we would have done differently. After the presentation, you’ll come away with tips on how to communicate and estimate a feature, track your project’s status, collaborate better with your business users and improve your team’s overall performance.