Agile Testing tools List
http://weblogs.asp.net/rosherove/archive/2008/10/03/agile-testing-tools-list.aspx

這裡有一堆在做unit testing, 或test automation時可以用的testing framework, 大家看看吧.
有些我能找到source, 我都已經把URL列出來. 其他的可能要你自己找找.

A.  Mock Frameworks
(1) Moq
    - Moq (pronounced "Mock-you") is the only mocking library for .NET developed from scratch to take full advantage of .NET 3.5 (i.e. Linq expression trees) and C# 3.0 features (i.e. lambda expressions) that make it the most productive, simple and refactoring-friendly mocking library available
    - http://code.google.com/p/moq/
(2) Rhino Mocks
    - A dynamic mock object framework for the .Net platform. It's purpose is to ease testing by allowing the developer to create mock implementations of custom objects and verify the interactions using unit testing.
    - http://ayende.com/projects/rhino-mocks.aspx
(3) Typemock Isolator
- The Typemock Isolator mocking framework for .NET unit testing, allows you to focus your energy on developing quality code.
- http://www.typemock.com/
(4) NMock
    - NMock is a dynamic mock object library for .NET. Mock objects make it easier to test single components - often single classes - without relying on real implementations of all of the other components.
    - http://www.nmock.org/
(5) NUnit.Mocks
    - http://www.nunit.org/index.php
    
B. Test Frameworks
(1) MSTest
- MSTest is a software unit testing framework developed by Microsoft, which integrates closely with Visual Studio. MSTest lets you create, manage and run unit tests from within the Visual Studio IDE, as well as externally, from the command line.
- http://msdn.microsoft.com/en-us/library/ms182489(VS.80).aspx
(2) NUnit
- http://www.nunit.org/index.php
(3) MbUnit
- MbUnit provides advanced unit testing support with advanced fixtures to enable developers and testers to test all aspects of their software.
- http://www.mbunit.com/
(4) XUnit
- http://www.codeplex.com/xunit
(5) Gallio
http://www.gallio.org/

C. Dependency Injection and Ioc Containers
(1) StructureMap
    - StructureMap is a Dependency Injection framework that can be used to improve the architectural qualities of an object oriented system by reducing the mechanical costs of good design techniques. StructureMap can enable looser coupling between classes and their dependencies, improve the testability of a class structure, and provide generic flexibility mechanisms. Used judiciously, StructureMap can greatly enhance the opportunities for code reuse by minimizing direct coupling between classes and configuration mechanisms.
    - http://structuremap.sourceforge.net/Default.htm
(2) Microsoft Unity
    - The Unity Application Block (Unity) is a lightweight, extensible dependency injection container.
    - http://msdn.microsoft.com/en-us/library/cc468366.aspx
(3) Castle Windsor
(4) Common IServiceLocator Framework
(5) Managed Extensibility Framework
    - The Managed Extensibility Framework (MEF) is a new library in .NET that enables greater reuse of applications and components. Using MEF, .NET applications can make the shift from being statically compiled to dynamically composed. If you are building extensible applications, extensible frameworks and application extensions, then MEF is for you.
    - http://code.msdn.microsoft.com/mef
(6) Spring.NET
    - Spring.NET is an open source application framework that makes building  enterprise .NET applications easier.
    - http://springframework.net/
(7) AutoFac
    - Autofac was designed with modern .NET features and obsessive object-orientation in mind. It will change the way you approach dependency injection in .NET.
    - http://code.google.com/p/autofac/
    
D. Database testing
(1) Use Integration testing
(2) MbUnit,NUnit,XUnit Rollback attributes
(3) TransactionScope
    - http://msdn.microsoft.com/zh-tw/library/system.transactions.transactionscope(VS.80).aspx
        
E. Web Testing
(1) Ivonna and Typemock
(2) Team System Web Test
    - The Visual Studio 2005 Team System enables Web Testing which makes it easy for testing your website without writing any code. When we say web testing, the Visual Studio 2005 Team System Web testing does not do any user interface testing; instead the tests are done against the data that is flowing through the HTTP. This data is examined and validated with various rules in place.
    - http://msdn.microsoft.com/en-us/library/ms364077(VS.80).aspx
(3) NUnitASP
    - NUnitAsp is a tool for automatically testing ASP.NET web pages. It's an extension to NUnit, a tool for test-driven development in .NET.
    - http://nunitasp.sourceforge.net/
(4) Watin
    - Inspired by Watir  development of WatiN started in December 2005 to make a similar kind of Web Application Testing possible for the .Net languages.
    - http://watin.sourceforge.net/
(5) Watir
    - Watir is an open-source library for automating web browsers. It allows you to write tests that are easy to read and maintain. It is simple and flexible.
    - http://wtr.rubyforge.org/
(6) Selenium
    - Selenium is a suite of tools to automate web app testing across many platforms.
    - http://selenium.seleniumhq.org/
    
F. UI Testing
(1) NUnitForms
    - NUnitForms is an NUnit extension for unit and acceptance testing of Windows Forms applications.
    - http://nunitforms.sourceforge.net/
(2) Project White
    - White supports all rich client applications, which are Win32, WinForm, WPF and SWT (java).
It is .NET based and hence you wouldn't have use proprietary scripting language. You can use your favourite .NET language, IDE and tools for developing tests/automation programs.
    White provides consistent object oriented API for all kinds of applications. Also it hides all the complexity of Microsoft's UIAutomation library and windows messages (on which it is based).
    - http://www.codeplex.com/white
(3) Team System UI Tests
(4) Typemock Isolator
    
G. Threading Related Testing
(1) Microsoft Chess
    - CHESS is an automated tool for finding errors in multithreaded software by systematic exploration of thread schedules.
    - http://research.microsoft.com/chess/
(2) Typemock Racer
    - Typemock Racer helps find possible deadlocks in production code by allowing the developer to write threaded tests that flesh out possible problems.
    - Racer provides the developer with a framework API which can be used in Parallel Computing tests (under NUnit for example), that allows the code to be tested for deadlocks in multithreaded code.
    - http://www.typemock.com/learn_about_typemock_racer.html
(3) Osherove.ThreadTester
    - The ThreadTester library helps create tests that use multiple threads. It’s main use is to synchronize and “block” the running test until all the threads have finished their job, or a timeout has occurred. It is designed to make the test developer's life easier with a simple API that is readable and quick to use.
    - http://weblogs.asp.net/rosherove/archive/2007/06/22/multi-threaded-unit-tests-with-osherove-threadtester.aspx
    
H. General Testing
(1) Pex
    - Automated White Box Testing for .NET
    - http://research.microsoft.com/Pex/

I. Acceptance Testing
(1) Fit & Fitnesse
- The fully integrated standalone wiki, and acceptance testing framework
- http://fitnesse.org/
(2) Watin and Watir and selenium
    a. Watin
        - Inspired by Watir  development of WatiN started in December 2005 to make a similar kind of Web Application Testing possible for the .Net languages.
        - http://watin.sourceforge.net/
    b. Watir
        - Watir is an open-source library for automating web browsers. It allows you to write tests that are easy to read and maintain. It is simple and flexible.
        - http://wtr.rubyforge.org/
    c. Selenium
        - Selenium is a suite of tools to automate web app testing across many platforms.
        - http://selenium.seleniumhq.org/

arrow
arrow
    全站熱搜

    kojenchieh 發表在 痞客邦 留言(0) 人氣()