用Junit写图书增删改查
时间: 2023-07-19 10:40:08 浏览: 46
好的,下面是一个简单的图书管理系统的增删改查的 Junit 测试代码:
```java
import static org.junit.Assert.*;
import java.util.ArrayList;
import java.util.List;
import org.junit.Before;
import org.junit.Test;
public class BookManagerTest {
private BookManager bookManager;
private List<Book> bookList;
@Before
public void setUp() throws Exception {
bookManager = new BookManager();
bookList = new ArrayList<Book>();
bookList.add(new Book("1001", "Java 101", "John Doe", 2019, 50));
bookList.add(new Book("1002", "Python 101", "Jane Doe", 2020, 60));
bookList.add(new Book("1003", "C++ 101", "James Smith", 2018, 40));
bookList.add(new Book("1004", "JavaScript 101", "Jessica Brown", 2021, 70));
bookManager.setBookList(bookList);
}
@Test
public void testAddBook() {
Book newBook = new Book("1005", "Ruby 101", "Robert Lee", 2022, 80);
bookManager.addBook(newBook);
assertEquals(newBook, bookManager.getBookById("1005"));
}
@Test
public void testDeleteBook() {
bookManager.deleteBook("1003");
assertNull(bookManager.getBookById("1003"));
}
@Test
public void testUpdateBook() {
Book updatedBook = new Book("1004", "JavaScript 101", "Jessica Brown", 2021, 80);
bookManager.updateBook(updatedBook);
assertEquals(updatedBook, bookManager.getBookById("1004"));
}
@Test
public void testGetBookById() {
Book book = bookManager.getBookById("1002");
assertNotNull(book);
assertEquals("Python 101", book.getTitle());
assertEquals("Jane Doe", book.getAuthor());
}
@Test
public void testGetAllBooks() {
List<Book> books = bookManager.getAllBooks();
assertEquals(bookList.size(), books.size());
assertEquals(bookList, books);
}
}
```
这是一个简单的图书管理系统的 Junit 测试代码,其中 `BookManager` 是一个图书管理类,用于实现图书的增删改查操作。在 `setUp()` 方法中初始化了一些图书数据,然后在各个测试方法中进行相应的测试操作,例如添加图书、删除图书、更新图书、根据 ID 获取单个图书、获取所有图书等。