| | | |

???()
?CSND.NET ?samlet [2003/12/01]


hJunit?l'?????
l???'Junit???j???
???
?????k????????±??i??????K???ôj??h??????h??????????L??????á??hh??h????h???hµ?
Junit??????h?????Junit????
1. hTestCase??
2. ??runTest()
3. ?h???assert()hboolean???òtrue???g

???currency?Money?K?
Public void testSimpleAdd() {
Money m12CHF = new Money(12, CHF);
Money m14CHF = new Money(14, CHF);
Money expected = new Money(26, CHF);
Money result = m12CHF.add(m14CHF);
Assert(expected.equals(result));
}
???l'Fixture????hSuite
Fixture
??K???ô?
????h??l???Fixture????????fixture??
???hfixture????ÿh????fixture??õ???
???õfixture
1. hTestCase?
2. fixtureÿhh?
3. setUp()'
4. tearDown()?setUp()???
????õ12Swiss Frances,14Swiss Frances28US Dollarsô?hfixture
Public class MoneyTest extends TestCase {
Private Money f12CHF;
Private Money f14CHF;
Private Money f28USD;
Protected void setUp() {
F12CHF = new Money(12, CHF);
F14CHF = new Money(14, CHF);
F28USD = new Money(28, USD);
}
}
hFixture????
Test Case
fixturea??h??
ûfixture?h???TestCaserunTest??
Junit?h?k??hfixture???g
1. fixture?k???public?g???reflectioná
2. hTestCase?????
??hMoney??hMoneyBag???
public void testMoneyMoneyBag() {
Money bag[] = {f26CHF, f28USD};
MoneyBag expected = new MoneyBag(bag);
AssertEquals(expected, f12CHF.add(f28USD.add(f14CHF)));
}
hMoneyTest????
new MoneyTest(testMoneyMoneyBag);
??????????k
?????hSuite
Suite
h???
???????Junit?h??TestSuite??h??
??h??
TestResult result = (new MoneyTest(testMoneyMoneyBag)).run();
?suite???
TestSuite suite = new TestSuite();
Suite.addTest(new MoneyTest(testMoneyEquals));
Suite.addTest(new MoneyTest(testSimpleAdd));
TestResult result = suite.run();
h?JunithTestCase?hsuite??TestCase??TestSuiteL?
TestSuite suite = new TestSuite(MoneyTest.class);
TestResult result = suite.run();
???????'?k?'?suite?k?hµ??suiteJ?
TestSuite?TestCase?????Test??K?????J?hTestSuite??h??hTestSuite??h??
TestSuite suite = new TestSuite();
Suite.addTest(Kent.suite());
Suite.addTest(Erich.suite());
TestResult result = suite.run();
TestRunner
???
hTestSuite??Junit?suite?L??suiteTestRunner????gh?ksuite()?hTestSuite
?'hMoneyTest suiteTestRunner????g?MoneyTest?J?
public static Test suite() {
TestSuite suite = new TestSuite();
Suite.addTest(new MoneyTest(testMoneyEquals));
Suite.addTest(new MoneyTest(testSimpleAdd));
Return suite
}
hTestCaseû?hsuite()ôTestRunner?hsuitesuite?gtest?k
Junit???hi?TestRunner?????java junit.swtui.TestRunnerjunit.swingui.TestRunner?û?h?
suite??
h?t???
h???L
????
û??????????Junitfailutueerror??Failure????assertiongError???lArrayIndexOutOfBounds???h????

??failureerror?Showt??hfailure??

Junit?hL??java junit.textui.TestRunnerz?suite()???ik???hmain()?batch??
?MoneyTest?batch TestRunner?
public static void main(String args[]) {
junit.textui.TestRunner.run(suite());
}
main()?????java MoneyTest??
?'?RunnerTestiTestRunner??junit.jar?w??CLASSPATH?


  <>

? | ? | | ? | ? | | | ? | ? | ??

Copyright® 2003 Test Engineer, Inc. All rights reserved.

 

| | | - | - | ?? | ?? | ?? | ?? | ?? | ?? | ?? > ?? | ?? > ? | ?? > ? | ?? > ? | ?? > ? | ?? > ? | ?? > ? | ?? > ? | ?? > ? | ?? > ? | ?? > ? | ?? > ? | ArrayArrayArrayArrayHoteles Canberra - Arizona Cooking Schools - Myspace Layouts - Mauritius LastminuteArrayArrayArrayArray