1 Reply Latest reply: Oct 4, 2012 2:20 AM by gimbal2 RSS

    Problem with JUnit Testing from Command Prompt

    966045
      Hi There,

      Related Info:
      OS - Windows 7 32 Bit, IDE Used: Eclipse

      I'm using the following command to compile the java file from the command prompt:
      C:\Users\J\Desktop> javac -classpath .:junit.jar check4PrimeTest.java

      I get the error: "package junit.framework does not exist import junit.framework.*;"
      How can i fix this?

      I have downloaded junit from junit.org the 'junit4.10' and extracted in my Java Folder along side jdkjdk1.7.0_03, jre6, jre7.

      I will post my code below for the 'check4PrimeTest.java' file which im trying to test from the command prompt.
      package check4prime;
      // check4PrimeTest.java
      
      //Imports 
      import junit.framework.*;
      
      public class check4PrimeTest extends TestCase {
      
           //Initialize a class to work with. 
           private check4Prime check4prime = new check4Prime();
      
           //constructor 
           public check4PrimeTest (String name) { 
                super(name);
           }
           
           //Main entry point 
           public static void main(String[] args) {
                System.out.println("Starting test...");
                junit.textui.TestRunner.run(suite());
                System.out.println("Test finished...");
           } // end main() 
      
           //Test case 1 
           public void testCheckPrime_true() {
                assertTrue(check4prime.primeCheck(3));
           }
           
           //Test cases 2,3 
           public void testCheckPrime_false() {
                assertFalse(check4prime.primeCheck(0));
                assertFalse(check4prime.primeCheck(1000));
           }
      
           //Test case 7 
           public void testCheck4Prime_checkArgs_char_input() { 
                try {
                     String [] args= new String[1];
                     args[0]="r";
                     check4prime.checkArgs(args);
                     fail("Should raise an Exception.");
                } catch (Exception success) { 
                     //successful test
                }
           } //end testCheck4Prime_checkArgs_char_input() 
      
           //Test case 5 
           public void testCheck4Prime_checkArgs_above_upper_bound() {
                try { 
                     String [] args= new String[1];
                     args[0]="10001";
                     check4prime.checkArgs(args);
                     fail("Should raise an Exception.");
                } catch (Exception success) { 
                     //successful test
                }
           } // end testCheck4Prime_checkArgs_upper_bound() 
      
           //Test case 4 
           public void testCheck4Prime_checkArgs_neg_input() {
                try { 
                     String [] args= new String[1];
                     args[0]="-1";
                     check4prime.checkArgs(args);
                     fail("Should raise an Exception.");
                } catch (Exception success) { 
                     //successful test
                }
           } // end testCheck4Prime_checkArgs_neg_input()
      
           //Test case 6
           public void testCheck4Prime_checkArgs_2_inputs() {
                try { 
                     String [] args= new String[2];
                     args[0]="5";
                     args[1]="99";
                     check4prime.checkArgs(args);
                     fail("Should raise an Exception.");
                 } catch (Exception success) {
                     //successful test 
                 } 
           } // end testCheck4Prime_checkArgs_2_inputs 
      
           //Test case 8 
           public void testCheck4Prime_checkArgs_0_inputs() {
                try { 
                     String [] args= new String[0];
                     check4prime.checkArgs(args);
                     fail("Should raise an Exception.");
                } catch (Exception success) { 
                     //successful test
                } 
           } // end testCheck4Prime_checkArgs_0_inputs 
      
           //JUnit required method. 
           public static Test suite() { 
                TestSuite suite = new TestSuite(check4PrimeTest.class);
                return suite;
           } //end suite() 
           
      } //end check4PrimeTest
      Edited by: 963042 on Oct 3, 2012 8:57 PM

      Edited by: 963042 on Oct 3, 2012 10:07 PM
        • 1. Re: Problem with JUnit Testing from Command Prompt
          gimbal2
          963042 wrote:
          C:\Users\J\Desktop> javac -classpath .:junit.jar check4PrimeTest.java
          That's the Linux way to do it. On windows there is a different list separator. Use this:

          javac -cp .;junit.jar check4PrimeTest.java

          And use -cp to save you some typing ;) If you want to incorporate unit testing into your builds I would suggest looking into automating it a little more through tool such as ant, maven, etc.