瀏覽代碼

Adding Editor Workflow Test Guidance

Signed-off-by: jckand-amzn <[email protected]>
jckand-amzn 3 年之前
父節點
當前提交
1bd80fc9e0
共有 1 個文件被更改,包括 96 次插入0 次删除
  1. 96 0
      testing guidance/workflow tests/editor/editor_workflow_tests.md

+ 96 - 0
testing guidance/workflow tests/editor/editor_workflow_tests.md

@@ -0,0 +1,96 @@
+**Editor Workflow Tests**
+----------
+
+* [Common Issues to Watch For](#FoundationWorkflowTesting-CommonIssuestoWatchFor)
+* [Workflow 1: Editor launch, Level CRUD, Entity/Component CRUD](#FoundationWorkflowTesting-Workflow1:Editorlaunch,LevelCRUD,Entity/ComponentCRUD)
+* [Workflow 2: UI Layout Customization, Docking/Window Management](#FoundationWorkflowTesting-Workflow2:UILayoutCustomization,Docking/WindowManagement)
+* [Workflow 3: Prefab Editing Focus Mode](#FoundationWorkflowTesting-Workflow3:PrefabEditingFocusMode)
+* [Workflow 4: Read-Only Entities](#FoundationWorkflowTesting-Workflow4:Read-OnlyEntities)
+
+Testing in this area should revolve primarily around UI/UX touchpoints with basic Editor functionality.
+
+## Special Requirements 
+Multiple Monitors (Preferably with different resolutions/Windows scaling/DPI settings)
+
+## Project Requirements
+Any, though AutomatedTesting makes life easier
+
+## Common Issues to Watch For
+
+Test guidance will sometimes note specific issues to watch for. The common issues below should be watched for through all testing, even if unrelated to the current workflow being tested.
+1. Console log errors/warnings/spam
+2. Asserts
+
+### Workflow 1: Editor launch, Level CRUD, Entity/Component CRUD
+
+**Product:** 
+Saved and exported level with an interesting scene
+
+**Suggested Time Box:** 
+30 mins
+
+| Workflow                                                               | Requests                                                                                                                                                                                                                      | Things to Watch For                                                                                                                                                        |
+|------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| Launch Editor                                                          |                                                                                                                                                                                                                               | *   Excessive load times<br>*   Inaccurate splash screen/start screen art/text<br>*   Asset Processor launch                                                               |
+| Create a new level/Open an existing level                              |                                                                                                                                                                                                                               | *   Excessive load times                                                                                                                                                   |
+| Create several new entities                                            | *   Create some in Entity Outliner/some in Viewport<br>*   Try duplicating/copy pasting entities to create new copies<br>*   Drag in prefabs from Asset Browser<br>*   Instantiate prefabs from context menu<br>*   Undo/Redo | *   Entity names                                                                                                                                                           |
+| Add/edit various components to entities to create an interesting scene | *   As components are added to entities, position entities around Viewport using Transform/Rotate/Scale controls with snapping both enabled/disabled  <br>*   Make changes via Transform component as well<br>*   Undo/Redo   | *   Component property control issues (Sliders/dropdowns/text boxes)<br>*   Component dependencies<br>*   Rendering changes reflected in Viewport<br>*   Viewport controls |
+| Enter Game Mode                                                        |                                                                                                                                                                                                                               |                                                                                                                                                                            |
+| Save/Export level                                                      |                                                                                                                                                                                                                               | *   Asset Processor errors with level processing                                                                                                                           |
+
+### Workflow 2: UI Layout Customization, Docking/Window Management
+
+**Product:** 
+Saved Editor UI Layout
+
+**Suggested Time Box:** 
+10-15 mins
+
+| Workflow                                                                                                         | Requests                                                                                                                        | Things to Watch For                                                  |
+|------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------|
+| Reset to Default Editor Layout                                                                                   |                                                                                                                                 | *   Incorrectly sized/hidden windows                                 |
+| Open several commonly used tools                                                                                 | *   Use a mixture of hotkeys/tools menu                                                                                         | *   Tools failing to open/opening offscreen                          |
+| Move some tools to secondary monitor                                                                             |                                                                                                                                 | *   Scaling issues/windows popping offscreen/hiding                  |
+| Dock some tools together and leave some windows free floating/snapped to other windows to create a custom layout | *   Dock side-by-side/create a tabbed group<br>*   Use both monitors                                                            | *   Unusable tools<br>*   Hidden windows/panes<br>*   Scaling issues |
+| Name and save the custom layout                                                                                  |                                                                                                                                 |                                                                      |
+| Load back and forth between a few different layouts                                                              | *   Verify layouts load successfully with elements on both monitors<br>*   Relaunch Editor while testing to ensure proper saves | *   Missing tools/unsaved/unloaded changes                           |
+
+### Workflow 3: Prefab Editing Focus Mode
+
+**Product:** 
+No tangible product, this workflow covers updating/manipulating tangible products, but doesn't itself generate any
+
+**Suggested Time Box:** 
+5-10 mins
+
+**Setup:**
+Create a Prefab with at least 2 entities underneath, each having a Mesh component with an assigned asset.
+
+| Workflow                                                                                                                                                                                 | Requests                                                                                                                                 | Things to Watch For                                                                                                                                                                                                                                                            |
+|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| With the prefab instance closed for editing click the Mesh entities making up the prefab in the Viewport                                                                                 |                                                                                                                                          | *   Clicking the entities that are a part of the prefab in the Viewport should only select the prefab root entity<br>*   It should not be possible to select the entities inside a prefab while it is not being edited, in any way, either through Viewport or Entity Outliner |
+| Enter Focus Mode to edit a prefab                                                                                                                                                        | *   Utilize both double-clicking and right-click context menu's Edit Prefab option                                                       | *   Entity Outliner should update and display the contents of the prefab being edited<br>*   Color of the container should change to a lighter blue                                                                                                                            |
+| With the prefab instance opened for editing click entities outside of the prefab instance                                                                                                | *   Try from within both the Viewport and the Entity Outliner<br>*   Try to toggle Hide/Lock for entities outside of the prefab instance | *   There should be clear a visual indication that entities outside of the focus tree are not selectable (WIP)                                                                                                                                                                 |
+| With the prefab instance opened for editing verify the breadcrumb widget at the upper-left of the Viewport displays the currently focused prefab, and the path to it from the level root | *   Add additional entities to the prefab hierarchy and click through the breadcrumb widget to ensure the mode changes as expected       |                                                                                                                                                                                                                                                                                |
+
+### Workflow 4: Read-Only Entities
+
+**Product:** 
+No tangible product, this workflow covers updating/manipulating tangible products, but doesn't itself generate any
+
+**Suggested Time Box:** 
+5-10 mins
+
+**Setup:**
+Instantiate a Procedural Prefab (Example Procedural Prefabs in AutomatedTesting: _Objects\\sphere\_5lods\_fbx.procprefab, multiple\_mesh\_one\_material\\multiple\_mesh\_one\_material\_fbx.procprefab_
+
+| Workflow                                                                                                                                                 | Requests                                                                                                                                                                                                                                                                                                                              | Things to Watch For                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
+|----------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| Instantiate a Procedural Prefab                                                                                                                          | *   Try via right-click context menu<br>*   Try via drag-and-drop from the Asset Browser (Not Yet Implemented)                                                                                                                                                                                                                        | *   Unusual delays in instantiation<br>*   Console errors/asserts                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
+| Entity Outliner:<br>Procedural Prefab container is distinct from normal Prefabs (currently Purple container color as opposed to Blue for normal prefabs) | *   Enter Focus Mode on the Procedural Prefab container:                                                                                                                                                                                                                                                                              | *   Procedural Prefab container is distinct from normal Prefabs (currently Purple container color as opposed to Blue for normal prefabs)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
+| Entity Outliner:<br>Mouseover container entity                                                                                                           |                                                                                                                                                                                                                                                                                                                                       | *   Tooltip reads, "Double-click to inspect"<br>*   Container icon is unique with an eye icon in place of the normal pencil icon                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
+| Entity Outliner:<br>Enter Focus Mode on the Procedural Prefab container                                                                                  | *   Test via right-click context menu and double-clicking the container entity                                                                                                                                                                                                                                                        | *   Hide/Lock functionality is disabled on the container and all child read-only entities<br>*   Read-only entities have unique icon with a lock icon over the normal box icon                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
+| Entity Outliner:<br>While in Focus Mode, attempt CRUD operations on read-only entities via context menu                                                  | *   Try reparenting entities<br>*   Try deleting entities<br>*   Try Hiding/Locking entities<br>*   Try parenting non-read-only entities to read-only entities and via the Transform component Parent entity reference in the Entity Inspector<br>*   Try dragging an asset/prefab from the Asset Browser over the read-only entities | *   Only options available to read-only entities are "Open pinned Inspector" and "Find in viewport"<br>*   Read-only entities and their children cannot be reparented or deleted<br>*   Non read-only entities cannot be parented to read-only entities via UI operations<br>*   Selecting read-only entities in the Outliner selects the corresponding entity in the Viewport, but no manipulator gizmos are usable<br>*   Selecting read-only entities in the Outliner displays the component information in the Entity Inspector:<br><ul>*   Components should be greyed out<br>*   Name field is not editable<br>*   No new components can be added<br>*   Existing components cannot be removed<br>*   Components can be copied<br></ul>*   Dragging an asset/prefab from the Asset Browser over the read-only entities is not allowed |
+| Entity Outliner:<br>Perform right-click context menu operations on the Procedural Prefab container                                                       | *   Utilize hotkeys as well to perform actions where possible (e.g. Delete and Duplicate)                                                                                                                                                                                                                                             | *   Instantiate Prefab/Procedural Prefab is not allowed<br>*   "Save Prefab to file" should result in an appropriate error message as changes cannot be saved<br>*   "Create Prefab" should create a new normal prefab with the Procedural Prefab nested inside.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
+| Viewport:<br>Click the container entity in the Viewport should enable manipulator gizmos                                                                 |                                                                                                                                                                                                                                                                                                                                       | *   Manipulator gizmos should be available for the container when not in Focus Mode                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
+| Viewport:<br>Double-click the container entity in the Viewport to enter Focus Mode                                                                       |                                                                                                                                                                                                                                                                                                                                       | *   Focus Mode is entered<br>*   No manipulator gizmos are available on the container entity or child read-only entities<br>*   Right-click context menus are limited to "Open pinned Inspector" and "Find in viewport"<br>*   Selecting read-only entities in the Outliner displays the component information in the Entity Inspector:<br><ul>*   Components should be greyed out<br>*   Name field is not editable<br>*   No new components can be added<br>*   Existing components cannot be removed<br>*   Components can be copied<br></ul>*   Dragging an asset/prefab from the Asset Browser into the Viewport while a Procedural Prefab is focused is not allowed                                                                                                                                                                   |