翻译:Myjava collectionss g...

按分类浏览
& & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & &G ood morning my dear.的用法和样例:
"So long, my dear friends," said Maria with tears in her eyes.
"再见,我亲爱的朋友们,"玛丽亚含著眼泪说。
My dear countrymen, let's unite and do our best for our motherland.
亲爱的同胞们,让我们团结起来为我们的祖国作最大的努力。
Fear not, my dear, for I am here.
不要害怕,亲爱的,因为有我在这里。
No, it is the song of the lark. It is morning, my dear,@ he said with a smile.
“不,那是云雀的叫声。现在是早晨了,亲爱的,”他微笑着说。
G ood morning my dear.的海词问答与网友补充:
G ood morning my dear.的相关资料:
相关词典网站:按分类浏览
& & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & &[译]使用Mockito简单mock入门 - 为程序员服务
为程序员服务
推荐团队博客
相关专栏文章
最近更新博客
[译]使用Mockito简单mock入门
我们在写单元测试的时候,面临的一个挑战就是要测试的内容总是依赖于其他组件,要是我们还得先配置好其他组件,未免有点不如意,那么我们可以使用Mocks来代替那些依赖的组件
本文问了展示这个过程,我会创建一个DAL,数据访问层,这是一个类,提供了一个通用的api来访问和修改数据仓库的数据,然后,我们要测试这个api,而不用配置连接某个本地的数据库,,或者一个远程的数据库,或者是一个文件系统,反正就是任何放数据的东西,DAL层的好处就是隔离开了数据访问和应用程序代码
首先使用maven来创建一个工程mvn archetype:generate -DgroupId=info.sanaulla -DartifactId=MockitoDemo -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false执行之后,本地生成MockitoDemo 文件夹,然后整个工程的目录结构与生成好了。
然后,我们写这样一个model类,表示book类型package info.sanaulla.
import java.util.L
* Model class for the book details.
public class Book {
private Integer yearOfP
private Integer numberOfP
public Book(String isbn,
String title,
List authors,
String publication,
Integer yearOfPublication,
Integer numberOfPages,
String image){
this.isbn =
this.title =
this.authors =
this.publication =
this.yearOfPublication = yearOfP
this.numberOfPages = numberOfP
this.image =
public String getIsbn() {
public String getTitle() {
public List getAuthors() {
public String getPublication() {
public Integer getYearOfPublication() {
return yearOfP
public Integer getNumberOfPages() {
return numberOfP
public String getImage() {
}然后,我们访问Book model的DAL类会如下package info.sanaulla.
import info.sanaulla.models.B
import java.util.ArrayL
import java.util.A
import java.util.C
import java.util.L
* API layer for persisting and retrieving the Book objects.
public class BookDAL {
private static BookDAL bookDAL = new BookDAL();
public List getAllBooks(){
return Collections.EMPTY_LIST;
public Book getBook(String isbn){
public String addBook(Book book){
return book.getIsbn();
public String updateBook(Book book){
return book.getIsbn();
public static BookDAL getInstance(){
return bookDAL;
}DAL层现在还没啥功能,我们要通过TDD来测试,实际中,DAL可能和ORM来交互,也可能和数据库API交互,但是我们设计DAL的时候,不用关心
我倾向于用junit做单元测试,而Mockito做mock。首先更新一下pom文件。添加依赖
info.sanaulla
MockitoDemo
1.0-SNAPSHOT
MockitoDemo
http://maven.apache.org
&!-- Dependency for JUnit --&
&!-- Dependency for Mockito --&
org.mockito
mockito-all
下面,我们要测试啦,我们会在单元测试中把mock数据注入到BookDAL中,这样我们就不要依赖任何数据源就可以完成测试public class BookDALTest {
public void setUp() throws Exception {
public void testGetAllBooks() throws Exception {
public void testGetBook() throws Exception {
public void testAddBook() throws Exception {
public void testUpdateBook() throws Exception {
}我们当然对应测试DAL类的每个方法嘛。
然后我们会在setup(这个方法是在测试类执行测试前执行的,用于准备数据啦)public class BookDALTest {
private static BookDAL mockedBookDAL;
private static Book book1;
private static Book book2;
@BeforeClass
public static void setUp(){
//创建BookDAL类的一个mock对象
mockedBookDAL = mock(BookDAL.class);
//创建Book类.
book1 = new Book("","Compilers Principles",
Arrays.asList("D. Jeffrey Ulman","Ravi Sethi", "Alfred V. Aho", "Monica S. Lam"),
"Pearson Education Singapore Pte Ltd", ,"BOOK_IMAGE");
book2 = new Book("0","Let Us C 13th Edition",
Arrays.asList("Yashavant Kanetkar"),"BPB PUBLICATIONS", ,"BOOK_IMAGE");
//用mock数据来stub对应的方法
when(mockedBookDAL.getAllBooks()).thenReturn(Arrays.asList(book1, book2));
when(mockedBookDAL.getBook("")).thenReturn(book1);
when(mockedBookDAL.addBook(book1)).thenReturn(book1.getIsbn());
when(mockedBookDAL.updateBook(book1)).thenReturn(book1.getIsbn());
public void testGetAllBooks() throws Exception {}
public void testGetBook() throws Exception {}
public void testAddBook() throws Exception {}
public void testUpdateBook() throws Exception {}
}在setup()方法中
1.首先我创建BookDAL的对象BookDAL mockedBookDAL = mock(BookDAL.class);2.然后stub,存根。。用mock的数据。这样当对应的方法被调用的时候就返回我mock的数据//当被getAllBooks调用的时候就返回我book1,和book2
when(mockedBookDAL.getAllBooks()).thenReturn(Arrays.asList(book1, book2));
when(mockedBookDAL.getBook("")).thenReturn(book1);
when(mockedBookDAL.addBook(book1)).thenReturn(book1.getIsbn());
when(mockedBookDAL.updateBook(book1)).thenReturn(book1.getIsbn());然后,我们执行一下
mvn test就可以看到结果了-------------------------------------------------------
-------------------------------------------------------
Running info.sanaulla.AppTest
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.029 sec
Running info.sanaulla.dal.BookDALTest
Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.209 sec
Tests run: 5, Failures: 0, Errors: 0, Skipped: 0
package info.sanaulla.
import info.sanaulla.models.B
import org.junit.BeforeC
import org.junit.T
import static org.junit.Assert.*;
import static org.mockito.Mockito.
import static org.mockito.Mockito.
import java.util.A
import java.util.L
public class BookDALTest {
private static BookDAL mockedBookDAL;
private static Book book1;
private static Book book2;
@BeforeClass
public static void setUp(){
mockedBookDAL = mock(BookDAL.class);
book1 = new Book("","Compilers Principles",
Arrays.asList("D. Jeffrey Ulman","Ravi Sethi", "Alfred V. Aho", "Monica S. Lam"),
"Pearson Education Singapore Pte Ltd", ,"BOOK_IMAGE");
book2 = new Book("0","Let Us C 13th Edition",
Arrays.asList("Yashavant Kanetkar"),"BPB PUBLICATIONS", ,"BOOK_IMAGE");
when(mockedBookDAL.getAllBooks()).thenReturn(Arrays.asList(book1, book2));
when(mockedBookDAL.getBook("")).thenReturn(book1);
when(mockedBookDAL.addBook(book1)).thenReturn(book1.getIsbn());
when(mockedBookDAL.updateBook(book1)).thenReturn(book1.getIsbn());
public void testGetAllBooks() throws Exception {
List allBooks = mockedBookDAL.getAllBooks();
assertEquals(2, allBooks.size());
Book myBook = allBooks.get(0);
assertEquals("", myBook.getIsbn());
assertEquals("Compilers Principles", myBook.getTitle());
assertEquals(4, myBook.getAuthors().size());
assertEquals((Integer)2008, myBook.getYearOfPublication());
assertEquals((Integer) 1009, myBook.getNumberOfPages());
assertEquals("Pearson Education Singapore Pte Ltd", myBook.getPublication());
assertEquals("BOOK_IMAGE", myBook.getImage());
public void testGetBook(){
String isbn = "";
Book myBook = mockedBookDAL.getBook(isbn);
assertNotNull(myBook);
assertEquals(isbn, myBook.getIsbn());
assertEquals("Compilers Principles", myBook.getTitle());
assertEquals(4, myBook.getAuthors().size());
assertEquals("Pearson Education Singapore Pte Ltd", myBook.getPublication());
assertEquals((Integer)2008, myBook.getYearOfPublication());
assertEquals((Integer)1009, myBook.getNumberOfPages());
public void testAddBook(){
String isbn = mockedBookDAL.addBook(book1);
assertNotNull(isbn);
assertEquals(book1.getIsbn(), isbn);
public void testUpdateBook(){
String isbn = mockedBookDAL.updateBook(book1);
assertNotNull(isbn);
assertEquals(book1.getIsbn(), isbn);
}很简单。。。没有配置任何实际的数据源。
相关文章推荐:当前位置: &
求翻译:i ?υst f?ni?he? τaκ?ηg а bαt? аn? ?m siτtín ?еrе ìη my tοwel [; ? αm kíηd оf n thе mοοd τo hav somе fuη.. yοu是什么意思?
i ?υst f?ni?he? τaκ?ηg а bαt? аn? ?m siτtín ?еrе ìη my tοwel [; ? αm kíηd оf n thе mοοd τo hav somе fuη.. yοu
问题补充:
我?υstf?ni?he?τaκ?ηgаbαt?和?msiτtín?еrеìη我tο?αmkíηdоf?thеmοοdτoHAVsomеfuη.. yοu
正在翻译,请等待...
正在翻译,请等待...
我 ?υst f?ni?he? τaκ?ηg 机构 bαt? аn? ?m siτtín ?еrе ìη 我的 tοwel [; ? αm kíηd оf n thе mοοd τo 甲肝病毒 somе fuη … … yοu
我 ?υst f?ni?he? τaκ?ηg 机构 bαt? аn? ?m siτtín ?еrе ìη 我的 tοwel [; ? αm kíηd оf n thе mοοd τo 甲肝病毒 somе fuη … … yοu
我来回答:
参考资料:
* 验证码:
登录后回答可以获得积分奖励,并可以查看和管理所有的回答。 |
我要翻译和提问
请输入您需要翻译的文本!

我要回帖

更多关于 java collections 的文章

 

随机推荐