के साथ एसिंक कार्यों का परीक्षण करना क्या आप जानते हैं कि Robolectric का उपयोग करके AsyncTasks के लिए यूनिट परीक्षण को कैसे कार्यान्वित किया जाए? किसी भी पॉइंटर्स की सराहना की जाएगी।robolectric
20
A
उत्तर
15
कार्य पर execute(...)
पर कॉल करें, फिर परिणाम कॉल Robolectric.runBackgroundTasks()
/Robolectric.flushBackgroundThreadScheduler()
पर प्रतीक्षा करें, तो आप जोर दे सकते हैं।
@Test
public void test() {
//create task
MyAsyncTask asyncTask = new MyAsyncTask();
//start task
asyncTask.execute(...);
//wait for task code
// Robolectric.runBackgroundTasks(); (pre 3.0)
Robolectric.flushBackgroundThreadScheduler(); //from 3.0
//can run asserts on result now
assert...(asyncTask.get());
}
7
Robolectric 2.4 के साथ
इस ShadowApplication
में है:
ShadowApplication.runBackgroundTasks();
धन्यवाद! यही समाधान है ... – StefMa
@bianca क्या यह उत्तर स्वीकार्य है? – weston