java - 类问题的驱动测试器

标签 java class oop testing

我一直在组装一个 Drive Tester 来测试我一直在为一项任务而努力的类(class),但我在测试器方面遇到了死胡同,我不确定如何完成它并消除任何错误。

这是测试人员:

public class PersonTester 
{
public static void main(String[] args)
{
    System.out.println("PersonClassTester");
    System.out.println("*****************");
    System.out.println("");

    Person joeSmith = new Person();
    String "smith" = joeSmith.setSurName(); // All these statements with set surname and forname etc are apperantly not statements and require a semi-colon, even though they are there.
    String "joe" = joeSmith.setForName();
    int 25 = joeSmith.setAge();
    double 1.57 = joeSmith.setHeight();
    String "male" = joeSmith.setGender();

    joeSmith.toString();
    joeSmith.format();
} 
}

这里的主要问题是 Netbeans 客户端声明突出显示的 setter 语句实际上不是语句,并且说尽管它们实际上存在,但每个语句都需要一个分号。这也表示没有正式或实际的论据。我知道它们是什么,但无论如何我对它们感到困惑。

这是我需要通过测试器运行的类:

public class Person 
{
private String surName;   
private String forName;   
private int age;   
private double height;           
private String gender;

@Override
public String toString()
{
    return getClass().getName() + "[surName= " + surName + " forName= " + forName + " age= " + age + " height= " + height + " gender " + gender + "]";
}

public void format()
{
    System.out.format("%10s%10s%10d%10f%10s", surName, forName, age, height, gender);
}

public String getSurName()
{
    return surName;
}

public String getForName()
{
    return forName;
}

public int getAge()
{
    return age;
}

public double getHeight()
{
    return height;
}

public String getGender()
{
    return gender;
}

public void setSurName(String surName)
{
    this.surName = surName;
}

public void setForName(String forName)
{
    this.forName = forName;
}

public void setAge(int age)
{
    this.age = age;
}

public void setHeight(double height)
{
    this.height = height;
}

public void setGender(String gender)
{
    this.gender = gender;
}    
}

关于让类测试器正常运行有什么建议吗?一旦测试人员完成了任务的其余部分,应该就不是什么大问题了。

编辑:程序编译,但无法打印字符串语句。

PersonClassTester
*****************

surName   forName        25  1.570000    gender

最佳答案

String "smith"= joeSmith.setSurName(); 语法不正确。它应该看起来像这样:

joeSmith.setSurName("smith")

这告诉 Java 在对象 joeSmith 上执行方法 setSurName(),将给定的字符串作为参数。

main 中的其余作业也是如此。

关于java - 类问题的驱动测试器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28383691/

相关文章:

java - 如何使用 "LIKE"和 "%"检查 android 中变量的相似性(Java 代码)

c++ - 如何定义具有循环依赖性的 C++ 类?

C++ OOP 重复继承模式

php - 如何获取一个类的所有公共(public)属性作为json?

Java 泛型 : set List of superclass using List of subclass

java - 无法通过 WiFi 连接,但可以通过移动数据连接

c++ - 分配对象数组动态卡住

c++ - 初始化列表、局部变量与数据成员

java - org.apache.spark.sql.catalyst.expressions.codegen.CodeGenerator在eclipse中生成java文件

c++ - 如果子类具有与父类相同的参数,子类是否应该覆盖构造函数?