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

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

0

2016-02-08 18:00:24

需要知道一些常规的正则表达式语句,然后可以仿照规则写出一下正则表达式语句。然后是关于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 = "liguohua1110@163.com"; 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); }}

本文网址:http://www.shaoqun.com/a/190412.html

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:admin@shaoqun.com。

正则表达式

0

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值