Junit4学习笔记二

小结一下,Junit4套件测试.

在com.dadao.util包中有两个编写好的java的程序.BetsFilter.java,OddsFilter.java

BetsFilter.java代码如下:

  1. package com.dadao.util;
  2. import java.util.regex.Matcher;
  3. import java.util.regex.Pattern;
  4. public class BetsFilter {
  5.     public String formatBets(String bets){
  6.         String result=null;
  7.         String filtedFirstBets = bets.replace("-""/");
  8.         String oldstr = ".0";
  9.         result=filtedFirstBets.replace(oldstr, "");
  10.         String regex = "((//d//.//d)0).*";
  11.         Matcher matcher = Pattern.compile(regex).matcher(result);
  12.         if(matcher.matches()){
  13.             result = result.replaceAll(matcher.group(1), matcher.group(2));
  14.         }
  15.         return result;
  16.     }
  17. }

OddsFilter.java代码如下:

  1. package com.dadao.util;
  2. public class OddsFilter {
  3.     public boolean isNeedOdds(Float oddsAteam, Float oddsBteam,double need) {
  4.         float oddsA = oddsAteam.floatValue();
  5.         float oddsB = oddsBteam.floatValue();
  6.         if (oddsA < 0) {
  7.             oddsA = (Math.abs(oddsA) + 1) / Math.abs(oddsA) - 1;
  8.         }
  9.         if (oddsB < 0) {
  10.             oddsB = (Math.abs(oddsB) + 1) / Math.abs(oddsB) - 1;
  11.         }
  12.         if (oddsA * oddsB >= need) {
  13.             return true;
  14.         } else
  15.             return false;
  16.     }
  17. }

测试类BetsFilterTest代码如下:

  1. package com.dadao.util;
  2. import org.junit.Assert;
  3. import org.junit.BeforeClass;
  4. import org.junit.Test;
  5. public class BetsFilterTest {//注意命名规范,较好的命名方式应该是要测试的类名后面加上"Test"
  6.     private static BetsFilter betsFilter;
  7.     @BeforeClass //该方法和@AfterClass标注的方法一样,必须是静态的.全局只执行一次
  8.     public static void initBetsFilterTest(){//
  9.         betsFilter = new BetsFilter();
  10.     }
  11.     @Test 
  12.     public void testFormatBets(){//虽然测试方法的名字可以随便取,但要养成好的代码编写习惯,见名知意.
  13.         String result = betsFilter.formatBets("2.50-3.0");
  14.         Assert.assertEquals("2.5/3",result);
  15.         String result2 = betsFilter.formatBets("0-0.5");
  16.         Assert.assertEquals("0/0.5",result2);
  17.     }
  18.     @Test(expected = java.lang.NullPointerException.class )//如果未抛出NullPointerException,则失败
  19.     public void testFormatBets2(){
  20.         betsFilter.formatBets(null);
  21.     }
  22.     @Test 
  23.     public void testFormateBets3(){
  24.         String result = betsFilter.formatBets("");
  25.         Assert.assertEquals("", result);
  26.     }
  27.     @Test(timeout = 1)//如果被测试的代码执行超过一豪秒,则失败.
  28.     public void testFormatBets4(){
  29.         betsFilter.formatBets("2.50-3.0");
  30.     }
  31. }

测试类OddsFilterTest代码如下:

  1. package com.dadao.util;
  2. import org.junit.Assert;
  3. import org.junit.Before;
  4. import org.junit.Test;
  5. public class OddsFilterTest {
  6.     private  OddsFilter oddsFilter; 
  7.     @Before
  8.     public void initOddsFilterTest(){
  9.         oddsFilter = new OddsFilter();
  10.     }
  11.     @Test
  12.     public void testIsNeedOdds(){
  13.         boolean b = oddsFilter.isNeedOdds(new Float(-0.88), new Float(0.9), 1.0);
  14.         Assert.assertEquals(true,b);
  15.     }
  16. }

下面编写一个套件测试类,代码如下:

  1. package com.dadao.util;
  2. import org.junit.runner.RunWith;
  3. import org.junit.runners.Suite;
  4. import org.junit.runners.Suite.SuiteClasses;
  5. @RunWith(Suite.class)//绑定一个叫做 Suite 的套件运行器
  6. @SuiteClasses({BetsFilterTest.class,OddsFilterTest.class}).//添加测试类
  7. public class UtilSuiteTest {
  8. }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值