Join Chiu-Ki Chan for an in-depth discussion in this video Test doubles, part of Effective Android Testing for Mobile Developers.
- [Instructor] What happens if we run…this test again?…Let's try that.…Click on the green triangle to run…click to favorite again.…This time it failed.…Let's take a look at the error message.…It said, expected, not is selected,…and then has this long list of attributes.…If you scroll you can see…that the view is selected is actually true.…Scroll down in the errors…and see where the failure actually happens.…
It's in line 45.…We are verifying that we started…with the recipe as not selected.…And the reason why it failed is because,…when we ran this test previously…we clicked on the recipe…and stored the variables selected…into our shared preferences.…This is why when we run the test a second time…it will not pass.…When the test changes the state of the app,…we cannot run it again…and expect the same result.…
How to solve this problem?…We want it so that in the app…it will always remember our selection,…but in our test, we want it to start…as a known state.…To solve this problem…we can use dependency injection…with test doubles.…
- Why test?
- Local vs. on-device
- Code coverage
- UI testing
- Hermetic environment
- Dependency injection
- Testing with MVP
Skill Level Intermediate
Android App Development: Unit Testingwith James P White2h 58m Intermediate
Android App Development: Data Persistence Librarieswith Annyce Davis4h 52m Intermediate
1. Testing Considerations
2. Test as You Go
3. UI Testing
4. Hermetic Environment
5. Robot Pattern
- Mark as unwatched
- Mark all as unwatched
Are you sure you want to mark all the videos in this course as unwatched?
This will not affect your course history, your reports, or your certificates of completion for this course.Cancel
Take notes with your new membership!
Type in the entry box, then click Enter to save your note.
1:30Press on any video thumbnail to jump immediately to the timecode shown.
Notes are saved with you account but can also be exported as plain text, MS Word, PDF, Google Doc, or Evernote.