BlogJava 联系 聚合 管理  

Blog Stats

随笔档案

文章档案

Infernu的Google site


Infernus-JXH

 

package com.tsinghuait.beans;

import static org.junit.Assert.*;

import org.junit.After;
import org.junit.Before;
import org.junit.Test;

public class TestShoppingCart {
    
private ShoppingCart sc = null;
    
    @Before
//加上@Before的是测试前的代码,方法名不限,但必须加上@Before。
    public void setUp() throws Exception {
        System.out.println(
"创建测试环境");
        sc 
= new ShoppingCart();
        sc.add(
"坦克"120.0);
        sc.add(
"飞机"180.0);
        sc.add(
"坦克"120.0);
    }

    
    @Before
    
public void show() {
        System.out.println(
"hahaha");
    }

    
    @After
//加上@After的是测试后的代码,方法名不限,但必须加上@After。
    public void tearDown() {
        sc 
= null;
        System.out.println(
"销毁测试环境");
    }

    
    @After
    
public void goodbye() {
        System.out.println(
"Goodbye");
    }


    @Test
//加上@Test的是测试代码,方法名不限,但必须加上@Test。
    public void testAdd() {
        
//fail("Not yet implemented");
        sc.add("大炮"15.5);
        assertEquals(
"大炮", sc.getItems().get(2).getName());
        assertEquals(
15.5, sc.getItems().get(2).getPrice());
        assertEquals(
1, sc.getItems().get(2).getAmount());
        sc.add(
"大炮"15.5);
        assertEquals(
"大炮", sc.getItems().get(2).getName());
        assertEquals(
15.5, sc.getItems().get(2).getPrice());
        assertEquals(
2, sc.getItems().get(2).getAmount());
    }


    @Test
    
public void testRemove() {
        
//fail("Not yet implemented");
        assertEquals(2, sc.getItems().get(0).getAmount());
        sc.remove(
"坦克");
        assertEquals(
1, sc.getItems().get(0).getAmount());
    }


    @Test
    
public void testGetTotal() {
        assertEquals(
420.0, sc.getTotal());
        
//assertEquals(); 方法可以用作黑箱测试,前一个参数是应该得出的结果,后一个是代码执行的结果。两项比较后相同测试通过
    }

}


如果有多个测试,只有全部通过后JUnit窗口上才会显示绿条。有一个未通过都是红色的,Eclipse的JUnit窗口上也会有提示哪项未通过。
posted on 2009-10-24 01:02 Infernus 阅读(249) 评论(0)  编辑  收藏

只有注册用户登录后才能发表评论。


网站导航: