Browse Source

formatting and organization changes based on feedback
added hyperlinks to official O3DE docs for reference.

Signed-off-by: Michael <[email protected]>

Michael 3 years ago
parent
commit
7d542057f7
1 changed files with 29 additions and 13 deletions
  1. 29 13
      testing-guidance/workflow-tests/scripting/script-canvas-tests.md

+ 29 - 13
testing-guidance/workflow-tests/scripting/script-canvas-tests.md

@@ -9,7 +9,16 @@ Test guidance will sometimes note specific issues to watch for. The common issue
 2. Warnings or assets that appear in the graph validation log
 2. Warnings or assets that appear in the graph validation log
 3. Unresponsive UI elements 
 3. Unresponsive UI elements 
 
 
-### Common Terms
+### Platforms:
+- Windows
+- Linux
+
+### Documents and Common Terms
+[O3DE Documentation: Script Canvas](https://www.o3de.org/docs/user-guide/scripting/script-canvas/) <br>
+[O3DE Documentation: Script Canvas Editor Interface Guide](https://www.o3de.org/docs/user-guide/scripting/script-canvas/get-started/editor-interface/ntnt) <br>
+[O3DE Documentation: User Functions](https://www.o3de.org/docs/user-guide/scripting/script-canvas/editor-reference/functions/) <br>
+
+
 <b>Script Canvas (SC) Editor</b>: Editing tool separate from O3DE's Editor used to create and modify script canvas graph files
 <b>Script Canvas (SC) Editor</b>: Editing tool separate from O3DE's Editor used to create and modify script canvas graph files
 
 
 <b>SC Graph</b>: A collection of node objects that can be modified and saved to a file.
 <b>SC Graph</b>: A collection of node objects that can be modified and saved to a file.
@@ -43,10 +52,10 @@ Visible and responsive Script Canvas editor.
 ## Area: Default Script Canvas Editor tools
 ## Area: Default Script Canvas Editor tools
 
 
 ### Project Requirements
 ### Project Requirements
-SC editor with the 5 basic tools enabled
-![SC graph editor and default tools](SCeditor_default_layout.png)
+SC editor opened with the 5 basic tools enabled.
+
 **Product:** 
 **Product:** 
-N/A
+Responsive Script Canvas editor with all 5 basic tools enabled. No Asset Processor warnings about invalid data or files.
 
 
 **Suggested Time Box:** 
 **Suggested Time Box:** 
 30 minutes
 30 minutes
@@ -55,9 +64,9 @@ N/A
 |---------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
 |---------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
 | Use and observe minimap behavior                                    | *   Open or create a graph with multiple nodes<br>*   Dragging the minimap will pan the main script canvas graph view<br> * Switching between multiple files will update the minimap                                                                                                                                                                                                                  | *   The minimap does not render or update properly<br>*   Panning around the minimap does not cause the effect in in main editor window and vice-versa                                                                                            |
 | Use and observe minimap behavior                                    | *   Open or create a graph with multiple nodes<br>*   Dragging the minimap will pan the main script canvas graph view<br> * Switching between multiple files will update the minimap                                                                                                                                                                                                                  | *   The minimap does not render or update properly<br>*   Panning around the minimap does not cause the effect in in main editor window and vice-versa                                                                                            |
 | Create a variable node with Variable Manager                        | *   Use Variable Manager to create a variable of any type.<br> *  Modify the properties of the variable.<br> * Drop the variable off the variable manager list onto a graph.<br> * Drag the variable off the variable manager list onto a node's input/ouput field (same type). <br> * Convert a node's input/ouput field to a reference and drag/select variables from the variable manager onto it. | *   Variable properties do not update when modified.<br> * Variable manager list refreshes and updates properly when variables are created, deleted or modified.<br> * Node Inspector updates when variables are selected in the Variable Manager |
 | Create a variable node with Variable Manager                        | *   Use Variable Manager to create a variable of any type.<br> *  Modify the properties of the variable.<br> * Drop the variable off the variable manager list onto a graph.<br> * Drag the variable off the variable manager list onto a node's input/ouput field (same type). <br> * Convert a node's input/ouput field to a reference and drag/select variables from the variable manager onto it. | *   Variable properties do not update when modified.<br> * Variable manager list refreshes and updates properly when variables are created, deleted or modified.<br> * Node Inspector updates when variables are selected in the Variable Manager |
-| View and Modify a node with Node Inspector                          | * Click a node on the graph and verify its fields and values are displayed in the Node Inspector.<br> * Verify that the values can be modified through Node Inspector.<br> Verify Node Inspector updates when different nodes or variables are selected. <br> * Select multiple nodes at once and see how they are reflected in Node Inspector.                                                       | *   Fields are properly labeled in Node Inspector. <br> * Changes made through Node Inspector are reflected on the node and vice-versa.                                                                                                           |
-| Create a graph validation error and warning                         | *  Drag several nodes onto a fresh SC graph. Run validation on the graph to verify warnings are generated and nodes are highlighted. <br> * Connect nodes and run validation to verify that warnings are no longer generated.<br> *                                                                                                                                                                   | * Highlighting & Dimming of failing nodes not updated.<br> * Warnings and errors not removed when issue is resolved.<br> * Conditions that produce an invalid graph do not trigger a warning or error.                                            |
-| Use the Node Palette to find node types                             | *   Search the Node Palette for a specific node type.<br> * Use the scrolling view controls to browse nodes.>br> * Drag a node off the palette onto a new SC graph.<br> * Use right click context menu on a SC graph to search & browse for nodes. <br> *   Mouse over a node in the palette to display a tooltip                                                                                     | *   Node palette renders properly when entering/deleting text in search field.<br> * Node categories can be expanded and collapsed.                                                                                                               |
+| View and Modify a node with Node Inspector                          | *   Click a node on the graph and verify its fields and values are displayed in the Node Inspector.<br> * Verify that the values can be modified through Node Inspector.<br> Verify Node Inspector updates when different nodes or variables are selected. <br> * Select multiple nodes at once and see how they are reflected in Node Inspector.                                                     | *   Fields are properly labeled in Node Inspector. <br> * Changes made through Node Inspector are reflected on the node and vice-versa.                                                                                                           |
+| Create a graph validation error and warning                         | *   Drag several nodes onto a fresh SC graph. Run validation on the graph to verify warnings are generated and nodes are highlighted. <br> * Connect nodes and run validation to verify that warnings are no longer generated.<br> *                                                                                                                                                                  | * Highlighting & Dimming of failing nodes not updated.<br> * Warnings and errors not removed when issue is resolved.<br> * Conditions that produce an invalid graph do not trigger a warning or error.                                            |
+| Use the Node Palette to find node types                             | *   Search the Node Palette for a specific node type.<br> * Use the scrolling view controls to browse nodes.<br> * Drag a node off the palette onto a new SC graph.<br> * Use right click context menu on a SC graph to search & browse for nodes. <br> *   Mouse over a node in the palette to display a tooltip                                                                                     | *   Node palette renders properly when entering/deleting text in search field.<br> * Node categories can be expanded and collapsed.                                                                                                               |
 
 
 
 
 ## Area: Basic Script Canvas graph tests 
 ## Area: Basic Script Canvas graph tests 
@@ -66,17 +75,20 @@ Testing in this area verify basic functionality of script canvas graphs and more
 ### Project Requirements
 ### Project Requirements
 Any project with a new level. SC editor with the 5 basic tools enabled
 Any project with a new level. SC editor with the 5 basic tools enabled
 
 
-**Product:** 
-Script canvas graph files that produce verifiable outputs when attached to entities and run through game mode or interpreter
+### References
+Default Script Canvas editor layout with the default tools enabled and highlighted
+![SC graph editor and default tools](SCeditor_default_layout.png)
 
 
+**Product:** 
+Script canvas graph files with basic input and output when run through game mode or interpreter
 
 
 **Suggested Time Box:**
 **Suggested Time Box:**
 60 minutes
 60 minutes
 
 
-| Workflow                                                                                                        | Requests                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | Things to Watch For                                                                                                                                                                                                                                                                      |
-|-----------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| Create and save a new script canvas graph with basic input and output                                           | *   Use any method to create a blank script canvas file.<br>    *   Use the node palette or right click context menu to add and connect multiple nodes.<br>    *   Create a logic sequence that will occur on graph start or on the activation of an entity<br>    *   Use the variable manager to create one or more new variables. Change a field on a node to a reference and use the newly created variable<br> * Click on a variable you created and use the Node Inspector to modify it. Change the name, default value and scope.<br> * Save the graph file and verify it functions as expected by attaching it to an entity and running the game or loading the graph in the Interpreter                                                                                                                                                                                                                                                                                                        | ![SC graph view and basic controls](SCeditor_graphview_controls.png)<br> *   Saving the file causes asset processor errors or warnings<br>*   Repeatedly running the game causes the graph to produce no results or inconsistent results<br>*   Console warnings or errors regarding Lua |
-| Create a 2nd script canvas graph file and use a script event to make the two files communicate during gameplay  | *   Use the O3DE asset editor to create a new script event.<br> *   Add a new event to the script event asset. Give it a unique and recognizable name<br> * Add input parameters to the event and save the asset. Verify the file appears on disk<br> * Search the Script Canvas editor's node inspector for the new event asset. Verify that you can add a send/receive signal to a graph.<br> ![Filtering Node Palette for a script event. Dragging the node onto the graph](SCeditor_script_events_workflow.png) <br> * Configure two or more script canvas files to send and receive signals from each other. Verify the communication with debug output or with more complex logic and game behavior <br><br><b> Examples: </b><br> * Attach a send signal to a timer node so every other second the receiving script changes a light's color. <br>* Send multiple different script events and a script canvas file that has different logic predecated on receiving each of the different signals | *   Tool display issues/unusable portions of tool<br>*   Interactivity issues                                                                                                                                                                                                            |
+| Workflow                                                                                                        | Requests                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | Things to Watch For                                                                                                                                                                                             |
+|-----------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| Create and save a new script canvas graph with basic input and output                                           | *   Use any method to create a blank script canvas file.<br>    *   Use the node palette or right click context menu to add and connect multiple nodes.<br>    *   Create a logic sequence that will occur on graph start or on the activation of an entity<br>    *   Use the variable manager to create one or more new variables. Change a field on a node to a reference and use the newly created variable<br> * Click on a variable you created and use the Node Inspector to modify it. Change the name, default value and scope.<br> * Save the graph file and verify it functions as expected by attaching it to an entity and running the game or loading the graph in the Interpreter                                                                                                                                                                                                                                                                                                        | *   Saving the file causes asset processor errors or warnings<br>*   Repeatedly running the game causes the graph to produce no results or inconsistent results<br>*   Console warnings or errors regarding Lua |
+| Create a 2nd script canvas graph file and use a script event to make the two files communicate during gameplay  | *   Use the O3DE asset editor to create a new script event.<br> *   Add a new event to the script event asset. Give it a unique and recognizable name<br> * Add input parameters to the event and save the asset. Verify the file appears on disk<br> * Search the Script Canvas editor's node inspector for the new event asset. Verify that you can add a send/receive signal to a graph.<br> ![Filtering Node Palette for a script event. Dragging the node onto the graph](SCeditor_script_events_workflow.png) <br> * Configure two or more script canvas files to send and receive signals from each other. Verify the communication with debug output or with more complex logic and game behavior <br><br><b> Examples: </b><br> * Attach a send signal to a timer node so every other second the receiving script changes a light's color. <br>* Send multiple different script events and a script canvas file that has different logic predecated on receiving each of the different signals | *   Tool display issues/unusable portions of tool<br>*   Interactivity issues                                                                                                                                   |
 
 
 ## Area: Advanced Script Canvas graph Tests
 ## Area: Advanced Script Canvas graph Tests
 Tests in this verify more advanced core features of script canvas.
 Tests in this verify more advanced core features of script canvas.
@@ -84,6 +96,10 @@ Tests in this verify more advanced core features of script canvas.
 ### Project Requirements
 ### Project Requirements
 Any project with a new level. SC editor with the 5 basic tools enabled
 Any project with a new level. SC editor with the 5 basic tools enabled
 
 
+### References
+Main Script Canvas editor view with advanced control buttons highlighted<br>
+![SC graph view and basic controls](SCeditor_graphview_controls.png)<br>
+
 **Product:**
 **Product:**
 Organized and annotated Script canvas graph files that produce verifiable outputs when attached to entities and run through game mode or interpreter
 Organized and annotated Script canvas graph files that produce verifiable outputs when attached to entities and run through game mode or interpreter