一个Junit做单元测试的简单例子

发表于:2015-5-22 15:39

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:tuo_chao    来源:51Testing软件测试网采编

  例子很简单,设计一个程序,输入三个整数,判断这三个整数作为三边的长度能否构成一个三角形,如果可以则返回三角形的类型(普通三角形,等腰三角形或者等边三角形)
  实现代码(我自己随便写的做个例子用,估计代码质量很差。。):
public class JudgeTriangle
{
//普通三角形
private static int NORMAL_TRIANGLE = 0;
//等腰三角形
private static int ISOSCELES_TRIANGLE  = 1;
//等边三角形
private static int EQUILATERAL_TRIANGEL = 2;
//无法构成三角形
private static int ERROR_CODE = -1;
public int getNormalTriangle()
{
return NORMAL_TRIANGLE;
}
public int getIsoscelesTriangle()
{
return ISOSCELES_TRIANGLE;
}
public int getEquilateralTriangle()
{
return EQUILATERAL_TRIANGEL;
}
public int getErrorCode()
{
return ERROR_CODE;
}
public int judgeType(int a,int b,int c)
{
if ((a<=0)||(b<=0)||(c<=0))
{
return ERROR_CODE;
}
if ((a+b<c || Math.abs(a-b)>c) || (b+c<a || Math.abs(b-c)>a) || (a+c<b || Math.abs(a-c)>b))
{
return ERROR_CODE;
}
if (a==b || b==c || c==a)
{
if (a==b && b==c)
{
return EQUILATERAL_TRIANGEL;
}
else
{
return ISOSCELES_TRIANGLE;
}
}
else
{
return NORMAL_TRIANGLE;
}
}
}
  单元测试代码:
import static org.junit.Assert.*;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
public class JudgeTriangleTest {
private static JudgeTriangle judgeTriangle = new JudgeTriangle();
@Before
public void setUp() throws Exception {
}
@Test
public void testIsNormalTriangle() throws Exception {
assertEquals(judgeTriangle.getNormalTriangle(),judgeTriangle.judgeType(3, 4, 5));
}
@Test
public void testIsIsoscelesTriangle() throws Exception {
assertEquals(judgeTriangle.getIsoscelesTriangle(),judgeTriangle.judgeType(2, 2, 3));
}
@Test
public void testEquilateralTriangle() throws Exception {
assertEquals(judgeTriangle.getEquilateralTriangle(),judgeTriangle.judgeType(2, 2, 2));
}
@Test
public void testNotTriangle() throws Exception {
assertEquals(judgeTriangle.getErrorCode(),judgeTriangle.judgeType(10, -10, 10));
assertEquals(judgeTriangle.getErrorCode(),judgeTriangle.judgeType(10, 2, 2));
}
@After
public void tearDown() throws Exception {
}
}
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号