`
nakupanda
  • 浏览: 416198 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

一个JUNIT4测试

    博客分类:
  • java
阅读更多
/**
 * 
 */
package bookstore.testcase;

import static org.junit.Assert.assertEquals;

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

import bookstore.exception.StockLineEmptyException;
import bookstore.exception.StockLineExistedException;
import bookstore.model.Item;
import bookstore.model.Stock;


/**
 * @author badboy
 *
 */
public class TestStock {
	private Stock stock;
	Item stockLine1;
	Item stockLine2;
	Item stockLine3;
	Item stockLine4;
	
	@Before
	public void before() throws StockLineExistedException{
		stock = new Stock();
		stockLine1 = new Item("book1","This is book1",99.9f,100);
		stockLine2 = new Item("book2","This is book2",88,2);
		stockLine3 = new Item("book3","This is book3",99,1);
		stockLine4 = new Item("book4","This is book4",10,0);
		stock.createStockLine(stockLine1);
		stock.createStockLine(stockLine2);
		stock.createStockLine(stockLine3);
		stock.createStockLine(stockLine4);
	}
	
	@Test(expected=StockLineExistedException.class)
	/*
	 * test duplicate case
	 */
	public void testCreateStockLine() throws StockLineExistedException{
		stock.createStockLine(stockLine1);
	}
	


	@Test
	public void testGetStockLine(){
		String bookId = "book1";
		Item item = stock.getStockLine(bookId);
		assertEquals(bookId,item.getId());
		assertEquals("This is book1",item.getDescription());
		assertEquals(new Float(99.9f),new Float(item.getPrice()));
		assertEquals(100,item.getRemaining());
	}
	
	@Test
	public void testQuantityOperation() throws StockLineEmptyException{
		Item item = stock.getStockLine("book1");
		stock.removeQuantity(item,99);
		assertEquals(1,stock.getStockLine("book1").getRemaining());
		stock.addQuantity(item, 50);
		assertEquals(51,stock.getStockLine("book1").getRemaining());
	}
	@Test(expected = StockLineEmptyException.class)
	public void testQuantityException() throws StockLineEmptyException {
		Item item = stock.getStockLine("book3");
		stock.removeQuantity(item,2);
		
		
	}
	
}

分享到:
评论

相关推荐

    junit4测试jar包

    5. **参数化测试**:`@Parameterized`测试可以使用不同的参数多次运行同一个测试方法,这对于测试多种输入情况非常有用。 6. **超时测试**:`@Test(timeout = 1000)`可以设置测试方法的执行时间限制,超过设定时间...

    junit4测试源码

    最后,"testJunit4"这个文件名可能是一个包含JUnit4测试用例的Java类或测试项目,其中可能包含了一系列的测试方法,用于验证特定功能的正确性。通过分析和运行这些测试用例,我们可以了解如何编写有效的JUnit4测试,...

    Junit4的小实例程序

    总之,这个"Junit4的小实例程序"是一个很好的学习资源,通过它,你可以学习到如何使用JUnit4进行单元测试,包括创建测试类、编写测试方法、使用断言以及了解测试生命周期等核心概念。实践这些示例,将有助于提升你的...

    在Eclipse中使用JUnit4进行单元测试

    创建JUnit测试类是单元测试的第一步。在Eclipse中,右键点击项目,选择"New" > "JUnit Test Case"。在此过程中,需要选择要测试的源代码类以及要测试的方法。测试类通常会继承自`org.junit.Test`注解的基类,并且每...

    junit4入门

    JUnit 是一个用于Java编程语言的单元测试框架,而Junit4作为其第四代版本,引入了许多新特性和改进,使得测试代码更加简洁、可读性强,大大提升了测试效率。这篇教程将带你走进Junit4的世界,深入理解其核心概念和...

    Junit 单元测试完整案例

    2. `@RunWith(SpringRunner.class)`:这是一个JUnit runner,它使得Spring TestContext Framework可以驱动测试执行。 3. `@SpringBootTest`:这个注解用于启动一个Spring应用上下文,可以指定配置类、web环境等。 ...

    Junit4测试使例

    这样,一个测试方法可以针对不同的输入值多次执行,大大增强了测试的覆盖率。 除了以上特性,JUnit4还支持使用注解进行分类测试,如`@Category`,以及使用`Assume`类来进行预条件检查,避免在不满足特定条件时执行...

    Junit4单元测试入门例子

    创建一个名为CalculateTest的类,继承自Junit4的`org.junit.runner.RunWith`注解的`JUnit4`类。这样做是因为我们需要使用JUnit4的运行器来执行测试。 ```java import org.junit.Test; import static org.junit....

    junit4单元测试

    总结一下,JUnit4是一个强大的单元测试框架,它的注解驱动使得测试代码更简洁,断言机制便于检查代码行为,参数化测试、异常测试、分类和分组等功能则提高了测试的灵活性和覆盖率。通过合理使用JUnit4,开发者能够...

    Junit单元测试文档

    junit3 junit4 api,单元测试的利器

    Junit4测试总结

    JUnit4是Java编程语言中最常用的一个单元测试框架,它极大地简化了测试代码的编写,使得开发者能够更加专注于测试用例的设计和执行。在本文中,我们将深入探讨JUnit4的主要特性、如何使用以及它在实际开发中的重要性...

    Junit4单元测试源码

    Unit是一个Java语言的单元...Junit测试是程序员测试,即所谓白盒测试,因为程序员知道被测试的软件如何(How)完成功能和完成什么样(What)的功能。Junit是一套框架,继承TestCase类,就可以用Junit进行自动测试了。

    junit4测试工具

    其次,JUnit4支持参数化测试,允许使用不同的输入数据执行同一个测试方法。这通过`@Parameters`注解和相关的静态方法实现,可以大大提高测试覆盖率,确保代码对各种可能的输入都能正确处理。 再者,JUnit4引入了...

    Junit4单元测试必备入门教程

    JUnit是一个流行的单元测试框架,它可以帮助开发者快速地编写和执行单元测试。 JUnit4的改进 ------------ JUnit4相比于JUnit3有了很大的改进。主要的改进点是引入了Annotation特性,简化了测试用例的编写。使用...

    junit4 jar包 Java单元测试框架绿色免费版.zip

    例如,`@Test`注解标记在测试方法上,表明这是一个需要执行的测试用例。此外,还有像`@Before`和`@After`注解,分别表示在每个测试方法执行前和执行后运行的代码块,用于初始化或清理测试环境。 除了基本的测试功能...

    junit4测试数据库源码

    对于事务管理,Junit4提供了@Transactional注解,可以在测试方法上标记,使得整个测试过程在一个事务内执行。如果测试失败,事务会被回滚,防止脏数据遗留。 总的来说,"junit4测试数据库源码"这个资源包将帮助你...

    Junit4测试用例示例

    `@Parameterized`测试允许用不同的输入参数运行同一个测试方法,以实现对多种情况的覆盖: ```java @RunWith(Parameterized.class) public class ParameterizedTest { @Parameters public static Collection[]> ...

    junit4 单元测试源码

    Eclipse开发环境是一个流行的Java集成开发环境,它支持JUnit插件,使得在Eclipse中编写和运行JUnit测试变得直观和便捷。 在Eclipse中使用JUnit4进行单元测试,首先需要安装JUnit库到项目中,并配置构建路径。然后,...

    Junit 计算器测试

    总结来说,"Junit计算器测试"是一个很好的实践项目,它可以帮助初学者理解Junit的基本用法,包括创建测试类、编写测试方法、使用断言以及理解测试生命周期。通过这样的练习,开发者可以逐步掌握单元测试的精髓,提高...

Global site tag (gtag.js) - Google Analytics