• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

软件测试之有关Junit的多线程测试

发布: 2009-4-08 09:25 | 作者: 不详 | 来源: 测试时代采编 | 查看: 68次 | 进入软件测试论坛讨论

领测软件测试网

如果你想验证下列代码,你需要下载并安装Junit。按着指示去做,以便能够在Junit的网站能够找到它。不要过分追求细节,我们将简要的介绍Junit是怎样工作的。要写一个Junit的测试,你必须首先创建一个扩展于junit.framework.TestCase(Juint中的基本测试类)的测试类。
        Main()方法和suite()方法被用启动测试。无论是从命令行还是IDE集成开发环境窗口,必须确保junit.jar在你的CLASSPATH环境变量里指定。然后为BadExampleTest.Class类编译运行下列代码:
import junit.framework.*;
public class BadExampleTest extends TestCase {
    // For now, just verify that the test runs
    public void testExampleThread()
            throws Throwable {
        System.out.println("Hello, World");
    }
    public static void main (String[] args) {
        String[] name =
            { BadExampleTest.class.getName() };
        junit.textui.TestRunner.main(name);
    }
    public static Test suite() {
        return new TestSuite(
            BadExampleTest.class);
    }
}

        运行BadExampleTest来验证所建立的每一件事情的正确性。一旦,main()被调用,Junit框架将自动的执行任意一个用“test”开关命名的方法。继续并试着运行测试类。如果你正确的做了每一件事,它应该在输出窗口打印出“Hello World”。
        现在,我们要给程序添加一个线程类。我将通过扩展java.lang.Runnable接口来做这件事情。最后,我们将改变策略,并且扩展一个使线程自动创建的类。
        在DelayedHello的构造器中,我们创建一个新的线程并且调用它的start()方法。
import junit.framework.*;
public class BadExampleTest extends TestCase {
    private Runnable runnable;
public class DelayedHello
        implements Runnable {
        private int count;
        private Thread worker;
        private DelayedHello(int count) {
            this.count = count;
            worker = new Thread(this);
            worker.start();
        }
        public void run() {
            try {
                Thread.sleep(count);
                System.out.println(
                "Delayed Hello World");
            } catch(InterruptedException e) {
                e.printStackTrace();
            }
        }
    }

    public void testExampleThread()
            throws Throwable {
        System.out.println("Hello, World");       //1
        runnable = new DelayedHello(5000);        //2
        System.out.println("Goodbye, World");     //3
    }
    public static void main (String[] args) {
        String[] name =
            { BadExampleTest.class.getName() };
        junit.textui.TestRunner.main(name);
    }
    public static Test suite() {
        return new TestSuite(
            BadExampleTest.class);
    }
}

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/

22/2<12

关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网