Upload
willis-briggs
View
215
Download
1
Embed Size (px)
Citation preview
MS Visual Studio 2005Unit Test
Agenda
Team system 概觀Unit TestCode CoverageWeb Test
Team System 概觀Pro
cess
an
d A
rch
itect
ure
Pro
cess
an
d A
rch
itect
ure
G
uid
an
ceG
uid
an
ce
Vis
ual S
tud
io In
du
stry
V
isu
al S
tud
io In
du
stry
Part
ners
Part
ners
Dynamic Code Analyzer
Visual Studio
Team Architect
Static Code Analyzer
Code Profiler
Unit Testing
Code Coverage
Visio and UML Modeling
Team Foundation Client (includes CAL)
Visual Studio Professional Edition
Load Testing
Manual Testing
Test Case Management
Application Designer
Logical Infra. Designer
Deployment Designer
Visual Studio
Team DeveloperVisual Studio
Team TestLoad Testing
Manual Testing
Test Case Management
Change Management
Work Item Tracking
Reporting
Project Site
Visual Studio
Team Foundation Integration Services
Project ManagementBig Build
Class Designer
測試種類
Unit testWeb testLoad testManual testGeneric testOrdered test3rd-party (NUnit, xUnit, …)
Unit Test
NamespaceMicrosoft.VisualStudio.TestTools.UnitTesting
AttributesTestMethod, TestClass, TestInitialize,
TestCleanup, ClassInitialize, ClassCleanup, AssemblyInitialize, AssemblyCleanup
Using Microsoft.VisualStudio.TestTeels,unitTesting;[TestClass]Public class ShoppingCartTest{
private ShoppingCart cart;[TestInitialize]public void TestInitialize(){
……..}[TestCleanup]public void TestCleanup(){
………}[TestMethod]public void TestCountAfterAdd(){
………}[TestMethod]public void TestCountAfterRemove(){
……..}
}
Attributes
執行時機不同TestMethod
每次執行 Unit Test 都會 runTestInitialize, TestCleanup
每次 Unit Test 的初始和結尾ClassInitialize, ClassCleanup
Class Test 的初始和結尾AssemblyInitialize, AssemblyCleanup
只執行一次,為最早及最後被呼叫的 attribute
Assert Methods
Assert.AreEqual, Assert.AreNotEqualAssert.AreSame, Assert.AreNotSameAssert.IsTrue, Assert.IsFalseAssert.IsNull, Assert.IsNotNullAssert.IsInstanceOfType,
Assert.IsNotInstanceOfTypeAssert.Fail, Assert.Inconclusive
CollectionAssert Class
AllItemsAreInstanceOfTypeAllItemsAreNotNullAllItemsAreUniqueAreEqual,AreNotEqualAreEquivalent,AreNotEquivalentContains, DoesNotContainIsNotSubsetOf, IsSubsetOf