2011-03-25 43 views
2

我遇到了一些問題,我不能完全弄清楚,和一個網站,我發現提出了一個問題與驗證不兼容()如果嘲笑用PowerMock創建。的EasyMock/PowerMock進口問題

當我輸入一行來創建一個模擬,Eclipse告訴我這個方法是模糊的,我最終不得不將它指定爲EasyMock.createMock或PowerMock.createMock。

本來我剛開始EasyMock的,然後切換到PowerMock。導入語句的順序是否重要,如果您使用PowerMock,重要的是不要包含某些EasyMock的東西?

下面是我得到了什麼:

import org.easymock.EasyMock; 
import org.junit.*; 
import org.junit.runner.RunWith; 

import static org.easymock.EasyMock.*; 
import static org.powermock.api.easymock.PowerMock.*; 
import org.powermock.reflect.Whitebox; 
import org.powermock.api.easymock.*; 
import org.powermock.api.easymock.PowerMock.*; 
import org.powermock.api.mockito.expectation.*; 
import org.powermock.api.mockito.*; 
import org.powermock.api.support.membermodification.*; 
import org.powermock.api.support.membermodification.MemberMatcher.*; 
import org.powermock.core.classloader.annotations.*; 
import org.powermock.modules.junit4.*; 

可能會有一些重複出現。衝突是否可能?爲了消除歧義,這個順序是否重要?

謝謝。

克雷格

回答

4

PowerMock例如以

import static org.easymock.EasyMock.aryEq; 
import static org.easymock.EasyMock.expect; 
import static org.easymock.EasyMock.expectLastCall; 
import static org.junit.Assert.assertEquals; 
import static org.junit.Assert.assertNotNull; 
import static org.junit.Assert.assertSame; 
import static org.junit.Assert.assertTrue; 
import static org.junit.Assert.fail; 
import static org.powermock.api.easymock.PowerMock.createMock; 
import static org.powermock.api.easymock.PowerMock.expectNew; 
import static org.powermock.api.easymock.PowerMock.replay; 
import static org.powermock.api.easymock.PowerMock.verify; 

注意,他們不從兩個庫導入createMock。你不應該導入您已經使用PowerMockEasyMock什麼。

+0

很好的建議。謝謝。 – 2011-03-28 16:34:44