Java 什么是JUnit测试用例,我将如何编写一个?

Java 什么是JUnit测试用例,我将如何编写一个?,java,junit,Java,Junit,在课堂上,我们学习了Java中的测试用例。教授没有仔细检查,我在网上找到的所有资料也没有那么有用。我知道它们有助于捕获程序中的任何错误,但它是如何工作的?在课堂上的例子中,教授说: @Test public void test1(){ Webpage n = new Webpage("www.facebook.com"); asssertequals(n.getURL(), "www.facebook.com"); } 即使还没有编写实际的代码,也可以使用getURL和Webpage(她希望

在课堂上,我们学习了Java中的测试用例。教授没有仔细检查,我在网上找到的所有资料也没有那么有用。我知道它们有助于捕获程序中的任何错误,但它是如何工作的?在课堂上的例子中,教授说:

@Test
public void test1(){
Webpage n = new Webpage("www.facebook.com");
asssertequals(n.getURL(), "www.facebook.com");

}
即使还没有编写实际的代码,也可以使用getURL和Webpage(她希望我们总是在编写代码之前编写测试用例)吗?在编写测试用例时,我们是否像以前编写了整个代码一样编写它,并测试我们认为会通过或失败的任何值?我知道,我有很多问题


另外,我的理解是,变量n被设置为等于括号中网页的任何内容,但是新操作符创建了应该分配给n的对象。

好,所以测试用例的开始对于更大的项目来说特别好和重要。因为这是自动化测试,所以它节省了开发人员的时间

所以第一个是第一个:

@Test 
使用此注释是为了让编译器知道哪些方法是实际测试

Webpage n = new Webpage("www.facebook.com"); 
在这里,您只是将变量“n”声明为url(facebook)

这就是魔法发生的地方。assertequals检查变量是否等于我们期望的值。如果在这种情况下它们相等,则测试通过。但是如果你有这个

Webpage n = new Webpage("www.facebook.co.uk"); 
asssertequals(n.getURL(), "www.facebook.com");
那么测试就会失败,因为我们期待www.facebook.com,但我们给co.uk

您还可以使用大量其他断言进行测试

还有更多信息,请参考这个网站:我发现它组织得非常好,写得非常好,也很容易理解


好的,所以开始测试用例对于更大的项目来说特别好和重要。因为这是自动化测试,所以它节省了开发人员的时间

所以第一个是第一个:

@Test 
使用此注释是为了让编译器知道哪些方法是实际测试

Webpage n = new Webpage("www.facebook.com"); 
在这里,您只是将变量“n”声明为url(facebook)

这就是魔法发生的地方。assertequals检查变量是否等于我们期望的值。如果在这种情况下它们相等,则测试通过。但是如果你有这个

Webpage n = new Webpage("www.facebook.co.uk"); 
asssertequals(n.getURL(), "www.facebook.com");
那么测试就会失败,因为我们期待www.facebook.com,但我们给co.uk

您还可以使用大量其他断言进行测试

还有更多信息,请参考这个网站:我发现它组织得非常好,写得非常好,也很容易理解


您是否阅读了添加到此问题的
junit
标签中的文档?这里有一个链接。我将从这里开始。另外,您可能会对测试驱动开发感兴趣和/或对测试驱动开发感兴趣。基本思想是在编写任何代码之前编写一些测试来测试代码(显然,此时所有测试都将失败!)。然后,编写一些代码,直到所有测试都通过为止(假设您有足够严格的测试),您现在有了一个工作系统!然后,这些测试有助于确保当您开始添加新功能时,不会破坏以前工作的任何功能。您是否阅读了自己添加到此问题的
junit
标记中的文档?这里有一个链接。我将从这里开始。另外,您可能会对测试驱动开发感兴趣和/或对测试驱动开发感兴趣。基本思想是在编写任何代码之前编写一些测试来测试代码(显然,此时所有测试都将失败!)。然后,编写一些代码,直到所有测试都通过为止(假设您有足够严格的测试),您现在有了一个工作系统!然后,这些测试有助于确保当您开始添加新功能时,不会破坏以前工作的任何功能。