B2G/QA/Automation/UI/Integration suite criteria: Difference between revisions
< B2G | QA | Automation | UI
Jump to navigation
Jump to search
No edit summary |
(Renaming acceptance to end-to-end) |
||
(3 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
In order to make a clearer distinction between the [https://wiki.mozilla.org/B2G/QA/Automation/UI/Strategy/Integration_vs_End_to_end#The_Solution Integration suite and the End-to-end one], here is a list which helps to define where a test belongs depending on its nature. | |||
In order to make a clearer distinction between the [https://wiki.mozilla.org/B2G/QA/Automation/UI/Strategy/ | |||
= General considerations = | = General considerations = | ||
Should be in Integration suite rather than in the | Should be in Integration suite rather than in the End-to-end one: | ||
* Tests | * Tests that don't represent a whole user story, such as boundary/edge cases, negative cases, and highly specific or unusual bug verifications. | ||
* | * Tests that perform small, isolated checks of the UI (such as a test that only verifies the sort order of a table) | ||
* Tests | * Tests that use mocks to simulate a portion of the system | ||
* Tests that verify something which is invisible for an end-user (example: "Is the gaia setting | * Tests that validate binding between the UI state and back end state | ||
* Tests that verify something which is invisible for an end-user (example: "Is the gaia setting 'ril.data.enabled' correctly set?"). An exception could be made for an End-to-end test if this verification is done during the setUp/tearDown phases. | |||
Should not be in Integration suite: | Should not be in Integration suite: | ||
Line 16: | Line 14: | ||
* Tests that check a device specific issue. | * Tests that check a device specific issue. | ||
* Tests that check the behavior with an external service without being mocked (like a test which interacts with the actual Gmail). | * Tests that check the behavior with an external service without being mocked (like a test which interacts with the actual Gmail). | ||
* Tests that takes too long to be executed | * Tests that takes too long to be executed. | ||
= Firefox OS current specific considerations = | = Firefox OS current specific considerations = | ||
Line 23: | Line 21: | ||
* relies on hardware which can't be currently mocked (like Camera, SIM/DSDS, FM antenna) | * relies on hardware which can't be currently mocked (like Camera, SIM/DSDS, FM antenna) | ||
* depends on external website/service which can't be mocked (as Carrier network, Firefox Account, some Email providers) | * depends on external website/service which can't be mocked (as Carrier network, Firefox Account, some Email providers) | ||
* Is blocked by a bug in b2g desktop, for instance: | * Is blocked by a bug in b2g desktop, (for instance: [https://bugzilla.mozilla.org/show_bug.cgi?id=1008930 MP4/3GP not recognized], [https://bugzilla.mozilla.org/show_bug.cgi?id=1116749 emergency dialer cannot be open]) | ||
* Is blocked by design issues in b2g desktop: | * Is blocked by design issues in b2g desktop: | ||
** Different FTUs on b2gdesktop | ** Different FTUs on b2gdesktop | ||
** Can't set the time on b2gdesktop without changing the time on the computer | ** Can't set the time on b2gdesktop without changing the time on the computer | ||
** Some settings are hidden on | ** Some settings are hidden on b2g desktop |
Latest revision as of 17:37, 17 November 2015
In order to make a clearer distinction between the Integration suite and the End-to-end one, here is a list which helps to define where a test belongs depending on its nature.
General considerations
Should be in Integration suite rather than in the End-to-end one:
- Tests that don't represent a whole user story, such as boundary/edge cases, negative cases, and highly specific or unusual bug verifications.
- Tests that perform small, isolated checks of the UI (such as a test that only verifies the sort order of a table)
- Tests that use mocks to simulate a portion of the system
- Tests that validate binding between the UI state and back end state
- Tests that verify something which is invisible for an end-user (example: "Is the gaia setting 'ril.data.enabled' correctly set?"). An exception could be made for an End-to-end test if this verification is done during the setUp/tearDown phases.
Should not be in Integration suite:
- Tests that are flaky by design (networking tests for example)
- Tests that check a device specific issue.
- Tests that check the behavior with an external service without being mocked (like a test which interacts with the actual Gmail).
- Tests that takes too long to be executed.
Firefox OS current specific considerations
A test cannot currently be in the Integration suite, if the test:
- relies on hardware which can't be currently mocked (like Camera, SIM/DSDS, FM antenna)
- depends on external website/service which can't be mocked (as Carrier network, Firefox Account, some Email providers)
- Is blocked by a bug in b2g desktop, (for instance: MP4/3GP not recognized, emergency dialer cannot be open)
- Is blocked by design issues in b2g desktop:
- Different FTUs on b2gdesktop
- Can't set the time on b2gdesktop without changing the time on the computer
- Some settings are hidden on b2g desktop