Play Framework 单元测试支持
什么是单元测试
单元
根据实际情况去判定其具体含义:
Java里单元指一个类
C语言里单元指一个函数
图形化软件中可以指一个窗口或一个菜单
...
单元就是认为规定的最小被测功能模块
软件的独立单元将在与程序的其他部分相隔离的情况下进行测试。
单元测试的特点
由代码开发者编写的一小段测试代码。
检验被测代码的一个很小,很明确的功能是否正确
这是重构的基础
测试驱动开发的基础
Play Framework 单元测试支持
在项目的test下新建一个类Mytest.java
编写代码
import org.junit.*; import play.test.UnitTest; public class Mytest extends UnitTest{ @Test public void CalcTest() { assertEquals(2, 1 + 1); } }
之后运行 play test 项目名
然后访问http://localhost:9000/@tests
即可看到
进行测试
现在我们更改测试代码
重新测试
发现错误
在测试类的任何方法执行方法执行之前都执行@before方法
例如
import org.junit.*; import java.util.*; import play.test.*; import models.*; public class BasicTest extends UnitTest { @Before public void set() { /*删除所有模型*/ Fixtures.deleteAllModels(); } @Test public void aVeryImportantThingToTest() { user Bob = new user("aa","bb","cc"); Bob.save(); Post news = new Post(Bob,"Hello Play Work","Hello as"); news.save(); assertEquals(1,Post.count()); } }