Java - Test Runner Class

/*
    Author: Fernando Zamora
    Description: 
    This is a simple test runner set of classes to easily test your code.
    Add additional asserts for the different types that you need 
    (e.g. char, float, etc)

*/

class TestResult{
  public boolean Passed;
  public String Message;
  
  public void println(){
    System.out.println(this.Message);
  }
}

class TestRunner{
  int failCount;
  int passCount;
  
  public int getFailCount(){
    return this.failCount;
  }
  
  public int getPassCount(){
    return this.passCount;
  }
  
  public TestResult assertTest(int expected, int actual, String testName){
    if(expected == actual){
      this.passCount++;
      return getTestPassed(""+expected, ""+actual, testName);
    }
    else{
      this.failCount++;
      return getTestFailed(""+expected, ""+actual, testName);
    }
  }
  
  public TestResult assertTest(String expected, String actual, String testName){
    if(expected.equals(actual)){
      this.passCount++;
      return getTestPassed("'"+expected+"'", "'"+actual+"'", testName);
    }
    else{
      this.failCount++;
      return getTestFailed(""+expected, ""+actual, testName);
    }
  }
  
   public TestResult assertTrue(boolean actual, String testName){
    if(actual){
      this.passCount++;
      return getTestPassed("true", ""+actual, testName);
    }
    else{
      this.failCount++;
      return getTestFailed("true", ""+actual, testName);
    }
  }
  
  public TestResult assertFalse(boolean actual, String testName){
    if(!actual){
      this.passCount++;
      return getTestPassed("false", ""+actual, testName);
    }
    else{
      this.failCount++;
      return getTestFailed("false", ""+actual, testName);
    }
  }
  
  public TestResult getTestPassed(String expected, String actual, String testName){
    TestResult testResult = new TestResult();
    testResult.Passed = true;
    testResult.Message = "PASSED: " + testName + " expected: " + expected + " actual: " + actual;
    return testResult;
  }
  
  public TestResult getTestFailed(String expected, String actual, String testName){
    TestResult testResult = new TestResult();
    testResult.Passed = false;
    testResult.Message = "FAILED: " + testName + " expected: " + expected + " actual: " + actual;
    return testResult;
  }
  
}

class Main {
  public static void main(String[] args) {
    TestRunner tester = new TestRunner();
    
    tester.assertFalse(false, "Test false passes").println();
    tester.assertFalse(true,  "Test false fails").println();
    tester.assertTrue(true, "Test true passes").println();
    tester.assertTrue(false, "Test true fails").println();
    tester.assertTest(0, 0, "Test 0,0 passes").println();
    tester.assertTest(0, 1,  "Test 0,1 fails").println();
    tester.assertTest("a", "b", "Test a,b fails").println();
    tester.assertTest("a","a", "Test a,a passes").println();
    
    //sample test case
    tester.assertTest("ABC", new String("ABC").toUpperCase(), "String.ToUpper()").println();
    
  }
  

}