你的位置:首页 > Java教程

[Java教程]正则表达式 和 junit测试

需要知道一些常规的正则表达式语句,然后可以仿照规则写出一下正则表达式语句。然后是关于junit测试.

 

 

知道了一个之前看过的文档,然后有功夫就看一下那个文档就可以,或者后面找时间搜索一下。

 

正则表达式是一个字符串:

由^开头

由$结尾。

[]表示可取值的范围。

\\d表示数字。

下面两个表达式等效:

^[0-9]*$

^\\d*$

都表示若干数字

下面这个表示多个汉字:

^[\u4e00-\u9fa5]{0,}$

汉字的码集是从\u4e00-\u9fa5

所有英文字母和数字:

^[a-zA-Z0-9]*$     

4到40位数字和字母:

^[a-zA-Z0-9]{4,40}$

至少一位应为字母:

^[a-zA-Z]+$

\w与  ^[a-zA-Z0-9]*$     等效。

所以我们可以写一个简易邮箱的验证:

regex = "^\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*$";

 

通过 String test = new string(forTest);

test.matches(regex)来比较

 

 

以下代码:package com.letben.regex;public class Regex {  public static void main(String[] args) {     String  regex = "^[0-9]*$";      String  msg = "34";      boolean isok = msg.matches(regex);      System.out.println(isok);      regex = "^\\d*$";      System.out.println(msg.matches(regex));      System.out.println("***********************");      regex = "^\\d{0,3}$";      System.out.println(msg.matches(regex));      System.out.println("***************************");      regex = "^[\u4e00-\u9fa5]{0,}$";      msg = "汉字";      System.out.println(msg.matches(regex));      System.out.println("********************************");      //regex = "^[A-Za-z0-9]+$";      regex = "^[A-Za-z0-9]{4,40}$";      msg = "1234";      System.out.println(msg.matches(regex));      //  全是英文字母      regex = "^[A-Za-z]+$";      msg = "ABCcddsd";      System.out.println(msg.matches(regex));      regex = "^\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*$";      msg = "[email protected]";      System.out.println(msg.matches(regex));  }}

 

 

测试:

 

这个讲的就很浅,比起之前学校里面讲过的。

要被测试的类:

 

package Calculate;public class Calculate {  public int add(int a,int b){    return a+b;  }  public int minus(int a,int b){    return a-b;  }}

 

右键当前类,创建一个Junit test case,这个就是测试用例,对于 开发来说我们可以创立与之对应的很多个测试用例,构成测试用例集,一旦测试用例集写完善以后,就可以让不定数量的源代码过来接受检测,这个测试用例集其实野蛮费脑筋的。这个就是 传说中的白盒测试。

总之,现在还没有那么深入,不过这个 的确是要被写的。现在现有这么一个印象。笔记千万不能丢就是了!换句话说,我不太想背这个地方,随着使用次数的增多,慢慢会熟悉这里面的原委的。爆出来的错误:errors属于语法错误。Failure属于逻辑错误。

 

package Calculate;import static org.junit.Assert.*;import org.junit.After;import org.junit.AfterClass;import org.junit.Before;import org.junit.BeforeClass;import org.junit.Test;public class TestCalculate {  /*这是一套  Calculate c ;  //在每一次方法使用之前调用获得该类的对象    @Before    public void getMyClass(){      c=new Calculate();    }    //在每一次方法使用之后释放该类的对象    @After    public void dismissMyClass(){      c=null;    }  */  //这里面放一个全的测试用例,到时候执行就可以了。  //用以检测不同的结果    static Calculate c;  //在类创建之前得到这个对象  @BeforeClass  public static void getMyClass(){    c = new Calculate();  }  //在类创建之后,释放这个对象。  @AfterClass  public static void dismissMyClass(){    c = null;  }  @Test  public void testAdd(){    int result = c.add(4, 5);    assertEquals(9, result);  }  @Test  public void testMinus(){    int result = c.minus(4, 3);    assertEquals(1, result);  }}

 

 

 

 

 


去浙江旅游最佳时间浙江旅游线路报价浙江旅游攻略大全浙江旅游路线推荐浙江自驾游攻略2015深圳海洋世界清明节门票多少钱?清明节深圳小梅沙有什么好玩的? 2015深圳海洋世界清明节门票价格?清明节深圳小梅沙好玩活动? 2015深圳野生动物园清明节门票价格?清明节深圳西丽动物园门票优惠吗? 2015深圳野生动物园清明节门票多少钱?清明节深圳西丽动物园好玩活动? 2015长隆野生动物园元旦门票多少钱?长隆香江野生动物园元旦活动介绍? 2015长隆香江野生动物园圣诞节有什么优惠?长隆香江动物园圣诞节活动介绍? 澳门赌场有哪些? 吉林雾凇岛——被尘世遗忘的仙境 普吉岛有什么好吃的? 泰国什么衣服便宜? 泰国有哪些好玩的地方? 普吉岛有什么好玩的景点? 珠海农科奇观在哪?怎么去? 从广州增城到花都有多远呢? 珠海求子泉景区在哪? 常泡温泉好不好? AT29C256-90DM/883B Datasheet AT29C256-90DM/883B Datasheet AT29C256-90DM/883C Datasheet AT29C256-90DM/883C Datasheet AT29C256-90J Datasheet AT29C256-90J Datasheet 广州到江门上川岛旅游 广州到江门上川岛旅游 广州到江门上川岛旅游 广州到江门下川岛旅游 广州到江门下川岛旅游 广州到江门下川岛旅游 广州到江门仙鹤湖度假山庄旅游 广州到江门仙鹤湖度假山庄旅游 广州到江门仙鹤湖度假山庄旅游