InfoQ: Why was Typemock created?
that developers didn't practice TDD (Test Driven Development) because writing unit tests was too hard, and he wanted to create a tool which will help developers become agile. Back then, Eli was a lead developer in a large corporation. Heavily involved in the whole time-to-market process, he realized that it was extremely complicated, and that the time spent writing code was becoming longer and harder. Eli's group of over 200 developers spent two to three months writing code, which then took almost nine months to test. Of course, this had a major impact on the product's time to market.
Eli decided to investigate why this was so. He formed a team that analyzed code-writing and test processes and found that almost 90% of the bugs the QA discovered could have been solved during development. The obvious conclusion was that had the bugs been fixed at development time, the whole process would have been shortened dramatically. It was then that Eli began looking into Agile methodologies, TDD, and unit testing as a way to improve the code, the testing process, and ultimately, the product.
Eli conducted a pilot in which developers wrote tests for their code, each for their own specific application. While the team understood the value of unit-testing the code, the pilot reinforced their basic assumption that writing, learning and implementing the tests would be extremely time consuming. Moreover, they learned that putting such process into practice in a large group of developers would only make their jobs even more complicated.
The pilot was successful in that it proved that writing code-validation tests was a vital and valuable process for improving product quality. At the same time, it demonstrated that the methods and tools available for code testing were nowhere as effective as they could be.
InfoQ: What sets Typemock Isolator apart from its competitors?
Typemock: Typemock Isolator adds ‘testability' attributes to all and any code base, making testing your code much more simple. The attributes are added by using a dynamic oriented Programming (AOP) framework, so you can write code in any design and still test it, as opposed to similar tools, that require writing code in a specific way. Isolator can be used with nearly all latest technologies - SharePoint and LINQ to name just a few.
Eli wrote the first version of Typemock Isolator at home, uploaded it to his website, and started handing it out to anyone who was interested, and the developers' community immediately saw the advantage of using Typemock Isolator to write unit tests. R&D managers can also use Isolator to see how many unit tests are being performed, which gives them a much better view of work versus schedule. When asked what drove him to dive into the world of mocking frameworks, Eli says that developers had always been aware of the value of unit testing, but that the time it took them was not always worth the effort. Today, one of his greatest satisfactions is to see how enthusiastic people are about Typemock Isolator, and how they have adopted it wholeheartedly. He says he enjoys seeing how people's eyes sparkle with delight when they talk about Typemock Isolator and what it does for them. Teams that have tried it report remarkable success in unit testing and show a higher rate of TDD adoption.
Today, Typemock is a full-fledged product sold to small and large companies alike. New features are being developed to make the entire development process more agile and integrative with the development environment. Users are so pleased with its performance that a vibrant Typemock community has emerged around the world. Members of the community share information about the product, make improvements, develop add ons, implement it in agile environments, and much more - all in the spirit of making code testing faster and more accurate.
InfoQ: Why should Developers adopt Typemock?
Typemock: The value of Typemock is not only reflected in the enthusiasm of its users but is also backed up by numbers. Corillian Corporation (www.corillian.com), a market-leading provider of online banking, payment and security solutions, adopted and implemented Typemock as a means to improve the quality of their software and introduce the agile practice of writing automated unit tests. The results were astounding. Within two months of its adoption, the number of their tests increased by 500%, test coverage increased by 50%, tests are 25% faster to write, and more and more of the company's developers are using it for their testing.
"It works exactly as advertised. It's letting us test things faster and easier than we could before."
Scott HanselmanB
Former Chief Architect, Corillian.
Some companies have even reported that after Typemock was implemented, their code made it to QA without a single bug!
InfoQ: What are some coming features in future versions of Typemock?
Typemock: Typemock Isolator is always being improved, with more features added all the time. A new version was just released, in fact, with a brand new API. Future versions are going to have much smoother integration with Visual Studio and Visual Studio Team System. Add-ins for specific platforms, such as SharePoint and databases are also planned. Isolator will handle more software patterns much easier, and also support isolating mscorlib.
Typemock is doing exactly what Eli Lopian envisioned when he developed the first version: It is changing the world of unit testing and turning developers into agile and TDD converts.
Typemock's motto is to help developers do their job better and faster, improve the code, and enter the world of TDD and Agile as smoothly as possible. For more information about Typemock, visit www.typemock.com.