Full stack story template
Italics are prompts to overwrite.
Area / scope to test | Front end | Back end | Model | Notes |
---|---|---|---|---|
Requirement specific constraints |
|
|
|
|
Role based constraints | How should the UI be modified? | How should the API respond? |
| Does role determine what a user can see or do? Is this enforced uniformly across the front end and back end? |
User preferences constraints |
|
|
| Is this impacted by user or farm preferences such as language, system of measure, certification status? |
Localization constraints |
| N/A | N/A | Should data be displayed differently based on localization, e.g. date format, phone numbers, numbers in currency inputs. Doesn’t include language (which is covered in the section above). |
Farm-level defaults / preferences |
|
|
| Are there any farm level defaults or preferences that should be shown or pre-selected? |
Numerical input constraints | Are inputs outside expected bounds appropriately shown to the user? | Is the endpoint response actionable? |
| Do we appropriately handle negative, very small, very large, or 0 as inputs? |
Text input constraints | Are inputs outside expected bounds appropriately shown to the user? | Is the endpoint response actionable? |
| Do we appropriately handle blank, very small, and very large inputs? Is there a strict format (such as email) that must be followed? |
Date based constraints | Are inputs outside expected bounds appropriately shown to the user? | Is the endpoint response actionable? |
| Are there logical restrictions on what dates can be input? Should a use be able to complete something in the future for example. |
Date based assumptions |
|
|
| Are we making valid assumptions about what dates should be allowed? |
Timezone driven interactions | Are timestamps appropriately shown in users timezone? | Are timestamps appropriately converted to users timezone? | Are timestamps stored in UTC? | If timezones play a role in the data, are they being displayed or converted appropriately? |
Interaction / transitioning UI based constraints |
| N/A | N/A | Is the UI transitioning appropriately? Is the API providing da |
Flow based constraints |
|
|
| Is state being preserved appropriately in a flow? If I go back and then forth, is it maintained? Is state invalidated when it should be? |
Synchronous / asynchronous constraints | Is the user appropriately informed of transitions from synch to asynch and vice versa? |
|
| Is the interaction synchronous, asynchronous, or does it support both? Can you simulate both if so? |
Time-out / low bandwidth constrains |
|
|
| Does the feature fail gracefully under no bandwidth / low bandwidth environments? |
Data transformation correctness | Is the data shown as expected post-transformation? |
| Is the data persisted as expected post-transformation? | Are values appropriately updated when units change? Is it WYSIWYG? |
Outcome correctness | Is it clear whether the outcome was a success of failure? Does it have the “right” visual treatment? |
|
| When inputting known inputs with expected outputs - do you get the results you expect? Have you tested several “cases” of this? |
Switching farms |
|
|
| Does this feature respond well to switching farms (and returning)? |
Notification constraints |
|
|
| Should a notification be marshalled based on this action? |
Cascading effects |
|
|
| Are there logical places |
Integration constraints |
|
|
| Do we need to ensure state is consistent between LiteFarm and the external service? What failure cases do we need to handle? How do we report back the outcome to the user or external service? |