• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    JUNIT測試通過的HelloWorld

    發布: 2007-7-01 18:47 | 作者: admin | 來源: | 查看: 28次 | 進入軟件測試論壇討論

    領測軟件測試網 把我剛測試成功的例子(3分鐘前)記錄下來放在這里,希望會對剛開始研究Junit的朋友有點幫助。

    到jakarta當一份apache-ant安裝到你的系統上,并把ant/bin加到系統變量path中,使你的ant命令可以在任何地方被調用。
    當一份junit3.8.1安裝到你的系統上(解壓縮,把junit.jar加到系統變量classpath中)。

    建立測試目錄JunitTest
    把java文件,統一放到JunitTest/src目錄,根據package建與之相關的目錄.
    文件1:

    HelloWorld.java

    package com.company;

    public class HelloWorld {
    public String sayHello() {
    return "Hello World!";
    }

    public static void main( String[] args ) {
    HelloWorld world = new HelloWorld();
    System.out.println(world.sayHello());
    }
    }



    文件2:

    AllJunitTests.java

    package test.com.company;

    import junit.framework.Test;
    import junit.framework.TestCase;
    import junit.framework.TestSuite;

    public class AllJunitTests extends TestCase{
    public AllJunitTests(String name){
    super(name);
    }

    public static Test suite(){
    TestSuite suite = new TestSuite();
    //TestSuite suite = new TestSuite();
    suite.addTestSuite(HelloWorldTest.class);

    return suite;
    }
    }


    文件3:


    HelloWorldTest.java

    package test.com.company;

    import com.company.HelloWorld;
    import junit.framework.TestCase;
    import junit.framework.AssertionFailedError;
    import junit.framework.Assert;


    /**
    * JUnit 3.8.1 testcases for HelloWorld
    */
    public class HelloWorldTest extends TestCase {

    public HelloWorldTest(String name) {
    super(name);
    }

    public static void main(String args[]) {
    junit.textui.TestRunner.run(HelloWorldTest.class);
    }

    public void testSayHello() {
    HelloWorld world = new com.company.HelloWorld();
    assertEquals("Hello World!", world.sayHello() );
    }
    }



    我的build.xml放到JunitTestuild,構造這個文件才可以使用ant命令來執行,包括編譯、打包、測試junit用例

    <?xml version="1.0" encoding="UTF-8" ?>

    <project name="anita" default="main" basedir="../">
    <property name="app.name" value="sayhello" />
    <property name="build.dir" value="build/classes" />

    <target name="JUNIT">
    <available property="junit.present" classname="junit.framework.TestCase" />
    </target>

    <target name="compile" depends="JUNIT">
    <mkdir dir="${build.dir}"/>
    <javac srcdir="src/" destdir="${build.dir}" >
    <include name="**/*.java"/>
    </javac>
    </target>

    <target name="jar" depends="compile">
    <mkdir dir="build/lib"/>
    <jar jarfile="build/lib/${app.name}.jar"
    basedir="${build.dir}" includes="com/**"/>
    </target>

    <target name="compiletests" depends="jar">
    <mkdir dir="build/testcases"/>
    <javac srcdir="src/test" destdir="build/testcases">
    <classpath>
    <pathelement location="build/lib/${app.name}.jar" />
    <pathelement path="" />
    </classpath>
    <include name="**/*.java"/>
    </javac>
    </target>

    <target name="runtests" depends="compiletests" if="junit.present">
    <java fork="yes" classname="junit.textui.TestRunner"
    taskname="junit" failonerror="true">
    <arg value="test.com.company.AllJunitTests"/>
    <classpath>
    <pathelement location="build/lib/${app.name}.jar" />
    <pathelement location="build/testcases" />
    <pathelement path="" />
    <pathelement path="${java.class.path}" />
    </classpath>
    </java>
    </target>
    </project>



    如果是win系統,在DOS窗口下進入你的工作目錄,并到 ../JunitTest/build下,執行ant runtests命令,會看到如下信息

    D:TEMPJunitTestTestCaseuild>ant runtests
    Buildfile: build.xml

    JUNIT:

    compile:
    [mkdir] Created dir: D:TEMPJunitTestTestCaseuildclasses
    [javac] Compiling 3 source files to D:TEMPJunitTestTestCaseuildclasses


    jar:
    [mkdir] Created dir: D:TEMPJunitTestTestCaseuildlib
    [jar] Building jar: D:TEMPJunitTestTestCaseuildlibsayhello.jar

    compiletests:
    [mkdir] Created dir: D:TEMPJunitTestTestCaseuild estcases
    [javac] Compiling 2 source files to D:TEMPJunitTestTestCaseuild estcas
    es

    runtests:
    [junit] .
    [junit] Time: 0

    [junit] OK (1 test)

    BUILD SUCCESSFUL
    Total time: 7 seconds


    <中間休息^_^>


    下面請把 com/company/HelloWorld.java文件中的return "Hello World!";改成return "Hello world!!",并在../JunitTest/builde目錄運行下運行ant runtests。
    我們會看到如下情形:
    ……………………………………
    ……………………………………
    runtests:
    [junit] .F
    [junit] Time: 0.01
    [junit] There was 1 failure:
    [junit] 1) testSayHello(test.com.company.HelloWorldTest)junit.framework.Comp
    arisonFailure: expected:<...World...> but was:<...world!...>
    [junit] at test.com.company.HelloWorldTest.testSayHello(Unknown Source)
    [junit] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    [junit] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAcces
    sorImpl.java:39)
    [junit] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMet
    hodAccessorImpl.java:25)

    [junit] FAILURES!!!
    [junit] Tests run: 1, Failures: 1, Errors: 0
    BUILD FAILED


    我們可以看到,這是JUNIT測試用例未正常運行通過的錯誤信息。

    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備10010545號-5
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>