51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2371|回复: 3
打印 上一主题 下一主题

[讨论] Eclipse中使用Junit编写测试用例

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2018-4-26 17:22:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Eclipse自带Junit插件,不用安装就能在项目中编写测试用例,非常方便。

在项目中添加Junit库

在编写测试用例之前,需要先引入Junit。对项目根目录右键,选择Properties,Java Build Path,Libraries,如图:



Add Library,选择Junit:



点Next选择Junit版本,然后Finish就完成了引入。

编写测试用例

假设有如下类:


  1. package choon.test;

  2. public class Calculate {
  3.     public int  Add(int x,int y) {
  4.         return x + y;
  5.     }
  6. }
复制代码

可以编写测试用例如下:

  1. package choon.test;

  2. import static org.junit.Assert.*;

  3. import org.junit.Test;

  4. public class Test1 {

  5.     @Test
  6.     public void test() {
  7.         Calculate calculate = new Calculate();
  8.         assertEquals(8, calculate.Add(3, 5));
  9.     }
  10.      
  11. }
复制代码

对test方法右键Run As Junit Test即可运行该测试用例:



如图,绿色状态条表示测试通过,如果是红色,则表示没有通过。

before和after标签

被before标记的方法在每个测试用例执行之前执行,被after标记的方法在每个测试用例执行后执行。

假如编写如下测试用例:

  1. package choon.test;

  2. import static org.junit.Assert.*;

  3. import org.junit.After;
  4. import org.junit.Before;
  5. import org.junit.Test;

  6. public class Test1 {
  7.     @Before
  8.     public void setUp() {
  9.         System.out.println("---begin test---");
  10.     }
  11.      
  12.     @Test
  13.     public void test() {
  14.         Calculate calculate = new Calculate();
  15.         assertEquals(8, calculate.Add(3, 5));
  16.         System.out.println("test case");
  17.     }
  18.      
  19.     @After
  20.     public void tearDown() {
  21.         System.out.println("---end test---");
  22.     }
  23. }
复制代码

则会有下面的执行结果:



测试用例的编写很重要,一个不好的测试用例既起不到测试作用又浪费时间,而一个好的测试用例可以很好的指出代码中的问题,避免更大的麻烦。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-24 20:03 , Processed in 0.061797 second(s), 23 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表