java和junit写类与测试类
发布网友
发布时间:2022-05-29 05:24
我来回答
共4个回答
热心网友
时间:2023-10-06 03:37
/** Book类 */
public class Book {
public String name;
public String author;
private int availNum;
public Book() {
this("", "", 0);
}
public Book(String name, String author, int availNum) {
this.name = name;
this.author = author;
this.availNum = availNum;
}
public int getAvailNum() {
return availNum;
}
public void setAvailNum(int availNum) {
this.availNum = availNum;
}
public boolean subscribe() {
if (availNum > 0) {
availNum--;
return true;
}
return false;
}
public boolean cancelSubscribe() {
availNum++;
return true;
}
}
/** Book类的单元测试类 */
import junit.framework.TestCase;
public class TestBook extends TestCase {
public void testBook() {
Book book = new Book("Thinking in Java", "Bruce Eckel", 3);
assertEquals(true, book.subscribe());// 第一次预借,应该是成功的
assertEquals(2, book.getAvailNum());// 此时的可预借数是2
assertEquals(true, book.cancelSubscribe());// 取消预借,应该是成功的
assertEquals(3, book.getAvailNum());// 此时的可预借数是3
book.setAvailNum(0);// 将可预借数设为0
assertEquals(false, book.subscribe());// 此时预借,应该是不成功的
}
public static void main(String[] args) {
junit.textui.TestRunner.run(Book.class);
}
}
上面的测试类可以不要main函数,直接在集成开发环境里用JUnit执行单元测试。
热心网友
时间:2023-10-06 03:38
我不拷贝别人的代码了,人家也不容易呀,参考下面网址吧:
http://tech.it168.com/j/2007-08-27/200708271553159.shtml
热心网友
时间:2023-10-06 03:38
把你的Book类放到和这个一个包下
package com.test.junit3;
import junit.framework.Assert;
import junit.framework.TestCase;
public class BookTest extends TestCase {
public void testSubscibe()
{
Book book = new Book();
int result = book.subscibe(...//你的业务逻辑);
//断言
Assert.assertEquals(这里是一个int值即你的需要断言的东西,result);
}
public void testCancelSubscribe(){
Book book = new Book();
int result = book.cancelSubscribe(...//你的业务逻辑);
//断言,这里需要考虑到非0的情况
Assert.assertEquals(这里是一个int值即你的需要断言的东西,result);
}
}
热心网友
时间:2023-10-06 03:39
class book {
private String name = "";
private String author = "";
private int availNum = 0;
public book() {
}
public void setAvailNum(boolean lendFlag) {
if (lendFlag) {
subscribe();
}
else {
cancelSubscribe();
}
}
private void subscribe() {
if (this.availNum != 0) {
this.availNum--;
}
}
private void cancelSubscribe() {
this.availNum++;
}
}