我填的是PageAdapter
類中的Cursor
和FragmentManager
價值,但在測試過程中帶來Cursor
和FragmentManager
爲空的始終。如何定義模擬光標爲Android單元測試
我怎樣才能配置測試得到Cursor
和FragmentManager
與一個有效的值?
public class PagerAdapter extends FragmentStatePagerAdapter {
private Cursor mCursor;
public PagerAdapter(FragmentManager fm, Cursor aCursor) {
super(fm);
mCursor = aCursor;
}
測試代碼塊低於:
@RunWith(MockitoJUnitRunner.class)
public class PagerAdapterTest extends Assert{
@Mock
private PagerAdapter mPagerAdapter;
private FragmentManager fm;
private Cursor mCursor;
@Before
public void setUp() throws Exception {
mPagerAdapter = new PagerAdapter(fm, mCursor);
}
可能是[是Java「pass-by-reference」還是「pass-by-value」?)(https://stackoverflow.com/questions/40480/is-java-pass-by-reference-or -pass-by-value) – GhostCat
這段代碼可以不**工作!將值分配給作爲方法參數的變量時,引用'fm'和'mCursor'將不**更改。這不僅會在你的單元測試中一直中斷。這在基本的Java級別上根本上是錯誤的。 – GhostCat
我必須爲'單元測試'構建並填充對象。我正在尋找一種方法來做到這一點,我被困住了:(你有我的建議來填寫這些對象嗎? – hpolat