Java 如何让eclipse显示测试结果?
我正在进行一个项目,在这个项目中,我必须进行测试,以确保某些代码能够满足用户的期望。我唯一要做的就是为GetCourseByCourseID编写代码。其他的都给了我。我已经编写了代码并运行了程序。程序运行,但不显示任何内容。我需要做什么Java 如何让eclipse显示测试结果?,java,testing,Java,Testing,我正在进行一个项目,在这个项目中,我必须进行测试,以确保某些代码能够满足用户的期望。我唯一要做的就是为GetCourseByCourseID编写代码。其他的都给了我。我已经编写了代码并运行了程序。程序运行,但不显示任何内容。我需要做什么 public class Course { public Course(String id, String title, int creditHours, String description, String prerequisiteCourse)
public class Course {
public Course(String id, String title, int creditHours, String description, String prerequisiteCourse)
{
this.CourseID = id;
this.CourseTitle = title;
this.CreditHours = creditHours;
this.Description = description;
this.PrerequisiteCourse = prerequisiteCourse;
}
public String CourseID;
public String CourseTitle;
public int CreditHours;
public String Description;
public String PrerequisiteCourse;
}
public class CourseList {
public Course[] CourseArray =
{
new Course ("CIS 400", "OO Analysis & Design", 4, "Important class", "CIS 110") ,
new Course ("CIS 150A" , "VB.NET Programming", 4, "Good Introduction to programming", "CIS 100") ,
new Course ("CIS 150B", "C# Programming with labs", 4, "Follow-up to CIS 100", "CIS 100")
};
public Course GetCourseByCourseID(String id)
{
for (Course course : CourseArray)
if (course.CourseID == id)
return course;
return null;
}
}
public class CourseListTest {
public static void main(String[] args)
{
GetCourseByCourseIDTestWhenCourseExists();
GetCourseByCourseIDTestWhenCourseDoesNotExist();
}
public static void GetCourseByCourseIDTestWhenCourseExists()
{
CourseList myCourseList = new CourseList();
Course myCourse = myCourseList.GetCourseByCourseID("CIS 400");
if (myCourse.CourseID != "CIS 400")
System.out.println("ERROR - GetCourseByCourseIDTestWhenCourseExists(): Returned CourseID Not equal (CIS 400)");
}
public static void GetCourseByCourseIDTestWhenCourseDoesNotExist()
{
CourseList myCourseList = new CourseList();
Course myCourse = myCourseList.GetCourseByCourseID("CIS 101");
if (myCourse != null)
System.out.println("ERROR - GetCourseByCourseIDTestWhenCourseDoesNotExist(): should have returned null");
}
}
这是一节课。我问我的教授为什么它没有出现,他说他不熟悉java,我应该使用visual basic。我个人讨厌VisualBasic在上一节课中的糟糕体验,我很想知道它在java中是如何工作的!我到处找了两个小时,什么也没找到!请帮忙 您的问题之一是if course.CourseID==id行,它无法正确比较字符串。您需要使用等于,而不是==进行字符串比较,因为==只是检查两个字符串是否是内存中的实际相同对象
if (course.CourseID.equals(id))
这一点在
如果myCourse.CourseID!=CIS 400
尝试修复这些问题,如果您的程序仍然无法运行,请发表评论
course.CourseID == id
myCourse.CourseID != "CIS 400"
将这两行更改为:
course.CourseID.equals(id)
!myCourse.CourseID.equals("CIS 400")
看看你能不能得到你想要的
基本上,您希望使用检查字符串是否相等,而不是使用==
您所做的是在循环其他课程之前在第一个课程中返回null。如果myCourse.CourseID.EqualsCI 400可能重复,则使用“否”,这是不正确的。再看一次,注意不存在错误{字符,您可能会在其中看到它们。是的,我不敢相信我错过了:P。可能是它们在错误的位置,或者他只是忘记了它们,如果他使用的是一个模糊的编译器,只是假设更正。OP的代码编译。他们说程序运行,但它没有显示任何内容。我看到您现在修正了你的代码,这样它也可以编译,但是当我发布我之前的评论时,它没有。我把equals改成了正确的java代码,这让我搞砸了…给我的是错误的,但我仍然无法弹出窗口来显示CourseListTest类的消息。我实际上在vb中完成了作业,并且遗漏了什么是CourseListTest类中方法的ELSE部分。这很烦人,因为他们给了我们已经编写好的代码…但这是错误的?所以我们仍然在重复检查整个过程。我想这是调试的一个教训哈哈
public Course GetCourseByCourseID(String id){
for (Course course : CourseArray){
if (course.CourseID.equals(id)){
return course;
}
}
return null;
}