Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Gherkin Script:Getting Started - Spring Boot-ODC-4389 #8362

Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
@@ -0,0 +1,140 @@
@add-flow
Feature: Upload JAR file
sanketpathak marked this conversation as resolved.
Show resolved Hide resolved
As a user, I want to upload a JAR file from using Upload JAR file card from Add page

Background:
Given user is at developer perspective
And user has created or selected namespace "aut-upload-jar-file"


@regression @manual
sanketpathak marked this conversation as resolved.
Show resolved Hide resolved
Scenario Outline: Upload JAR file from Add options
Given user is at the Add page
sanketpathak marked this conversation as resolved.
Show resolved Hide resolved
When user clicks on the Upload JAR file card
And user clicks on Browse in JAR file section
And user selects file to upload
And user selects appropriate Build image version
And user gives Application name as "sample-upload-app" and workload Name as "<name>"
And user selects resource type as "<resource_type>"
And user clicks create button
Then user will be redirected to Topology page
And user can see a toast notification of JAR file uploading with link to build logs
And user can see "<resource_type>" "<name>" in application "sample-upload-app" is created in topology

Examples:
| name | resource_type |
| sample-yaml-upload-1 | Deployment |
| sample-yaml-upload-2 | Deployment Config |

@regression @manual
Scenario Outline: Upload JAR file through drag and drop from Add options
Given user is at the Add page
sanketpathak marked this conversation as resolved.
Show resolved Hide resolved
When user clicks on the Upload JAR file card
And user drag and drop the file in JAR file section
And user selects appropriate Build image version
And user gives Application name as "sample-upload-app" and workload Name as "<name>"
And user selects resource type as "<resource_type>"
And user clicks create button
Then user will be redirected to Topology page
And user can see a toast notification of JAR file uploading with link to build logs
And user can see "<resource_type>" "<name>" in application "sample-upload-app" is created in topology

Examples:
| name | resource_type |
| sample-yaml-upload-a | Deployment |
| sample-yaml-upload-b | Deployment Config |


@regression
Scenario: Upload JAR file with advanced option "Health Checks" : A-04-TC12
When user is on the Upload JAR file form
And user clicks on Browse in JAR file section
And user selects file to upload
And user gives Application name as "sample-upload-app" and workload Name as "sample-yaml-upload"
And user clicks "Health Checks" link in Advanced Options section
And user fills the Readiness Probe details
And user fills the Liveness Probe details
And user fills the Startup Probe details
And user clicks Create button on Add page
Then user will be redirected to Topology page


@regression
Scenario: Upload JAR file without application route : A-04-TC05
When user is on the Upload JAR file form
And user clicks on Browse in JAR file section
And user selects file to upload
And user gives Application name as "sample-upload-app" and workload Name as "sample-yaml-upload"
And user unselects the advanced option Create a route to the application
And user clicks Create button on Add page
Then user will be redirected to Topology page
And public url is not created for node "sample-yaml-upload" in the workload sidebar


@regression
Scenario: Upload JAR file with advanced option "Routing" : A-04-TC06
When user is on the Upload JAR file form
And user clicks on Browse in JAR file section
And user selects file to upload
And user gives Application name as "sample-upload-app" and workload Name as "sample-yaml-upload"
And user clicks "Routing" link in Advanced Options section
And user enters Hostname as "home"
And user enters Path as "/home"
And user selects default Target Port
And user clicks Create button on Add page
Then user will be redirected to Topology page
And the route of application "sample-yaml-upload" contains "home" in the Routes section of the workload sidebar


@regression
Scenario: Upload JAR file with advanced option "Deployment" : A-04-TC08
When user is on the Upload JAR file form
And user clicks on Browse in JAR file section
And user selects file to upload
And user gives Application name as "sample-upload-app" and workload Name as "sample-yaml-upload"
And user clicks "Deployment" link in Advanced Options section
And user verify the Auto deploy when new image is available checkbox is selected
And user enters Name as "home" in Environment Variables Runtime only section
And user enters Value as "value" in Environment Variables Runtime only section
And user clicks Create button on Add page
Then user will be redirected to Topology page


@regression
Scenario: Upload JAR file with advanced option "Resource Limits" : A-04-TC09
When user is on the Upload JAR file form
And user clicks on Browse in JAR file section
And user selects file to upload
And user gives Application name as "sample-upload-app" and workload Name as "sample-yaml-upload"
And user clicks "Resource Limits" link in Advanced Options section
And user enters CPU Request as "10" in CPU section
And user enters CPU Limits as "12" in CPU section
And user enters Memory Request as "200" in Memory section
And user enters Memory Limit as "300" in Memory section
And user clicks Create button on Add page
Then user will be redirected to Topology page


@regression
Scenario: Upload JAR file with advanced option "Scaling" : A-04-TC10
When user is on the Upload JAR file form
And user clicks on Browse in JAR file section
And user selects file to upload
And user gives Application name as "sample-upload-app" and workload Name as "sample-yaml-upload"
And user clicks "Scaling" link in Advanced Options section
And user enters number of replicas as "5" in Replicas section
And user clicks Create button on Add page
Then user will be redirected to Topology page


@regression
Scenario: Upload JAR file with advanced option "Labels" : A-04-TC11
When user is on the Upload JAR file form
And user clicks on Browse in JAR file section
And user selects file to upload
And user gives Application name as "sample-upload-app" and workload Name as "sample-yaml-upload"
And user clicks "Labels" link in Advanced Options section
And user enters label as "app=frontend"
And user clicks Create button on Add page
Then user will be redirected to Topology page
And verify the label "app=frontend" in side bar of application node "sample-yaml-upload"
Expand Up @@ -172,3 +172,86 @@ Feature: Topology chart area
And user hovers on Add to Project and clicks on From Channel
And user clicks on Create
Then user is able to see different applications created from Samples, From Git, Container Image, From Dockerfile, From Devfile, From Catalog, Database, Operator Backed, Helm Charts, Event Source, Channel


@regression, @manual
sanketpathak marked this conversation as resolved.
Show resolved Hide resolved
Scenario: Upload JAR file form
Given user has a jar file named "sample_yaml_upload.yaml"
And user is at the Topology page
When user drags and drop jar file on topology
Then user sees Upload JAR file form
And user can see JAR section with jar file name with Browse and Clear button associated with it
And user can see Optional java commands, Runtime icon and Build image version under JAR section
And user can see General section with Application name and Name under it
And user can see Resources and Advanced options sections


@regression, @manual
Scenario: Drag and drop jar file in topology chart view
Given user has a jar file named "sample_yaml_upload.yaml"
And user is at the Topology page
When user drags and drop jar file on topology
And user gives Application name as "sample-upload-app" and workload Name as "sample-yaml-upload"
And user clicks on Create in Upload JAR file form
Then user is redirected to topology
And user can see a toast notification of JAR file uploading with link to build logs
And user can see deployment "sample-yaml-upload" in application "sample-upload-app" is created in topology


@regression @manual
Scenario: Add to Project to upload JAR file in topology
Given user is at the Topology page
When user right clicks on the empty chart area
And user clicks on Add to Project
And user clicks on Upload JAR file
And user clicks on Browse in JAR file section
And user selects file to upload
And user clicks Clear and reupload the file
And user gives Application name as "sample-upload-app" and workload Name as "sample-yaml-upload-1"
And user clicks on Create
Then user is redirected to topology
And user can see a toast notification of JAR file uploading with link to build logs
And user can see deployment "sample-yaml-upload-1" in application "sample-upload-app" is created in topology


@regression @manual
Scenario: Add to Project through drag and drop to upload JAR file in topology
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This scenario is a bit redundant with the one above it considering the difference has already been tested as part of the form tests. The interaction with topology is the same.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I understand but we need to consider all the scenario as part of epic

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I suppose. I'm not sure of your overall strategy.
IMO testing topology doesn't require re-testing the different form flows. As long as one of the flows works.

Given user is at the Topology page
When user right clicks on the empty chart area
And user clicks on Add to Project
And user clicks on Upload JAR file
And user drag and drop the file in JAR file section
And user gives Application name as "sample-upload-app" and workload Name as "sample-yaml-upload-1"
And user clicks on Create
Then user is redirected to topology
And user can see a toast notification of JAR file uploading with link to build logs
And user can see deployment "sample-yaml-upload-1" in application "sample-upload-app" is created in topology


@regression, @manual
Scenario: Drag and drop Incompatible file in topology chart view
Given user has a incompatible file
And user is at the Topology chart view
When user drags and drops the file on topology
Then a toast warning message will appear stating that the file is invalid.


@regression, @manual
Scenario: Exiting the browser while an upload is in progress
Given user is uploading a jar file
And user is at the Topology chart view
When user tries to exist the browser
Then a web alert would appear asking the user if they really wanted to leave the page with Leave and Skip button


@regression, @manual
Scenario: View shortcuts menu
Given user has uploaded a jar file
When user clicks on View shortcuts
Then user sees shortcut for Move
And user sees shortcut for Edit Application grouping
And user sees shortcut for Access context menu
And user sees shortcut for View details in side panel
And user sees shortcut for Access create connector handle
And user sees shortcut for Qpen quick search modal
And user sees shortcut for Drag and drop a JAR file into Topology
Expand Up @@ -37,3 +37,15 @@ Feature: Editing an application
And user edits Application name as "nodejs-ex-git-app-1"
And user clicks on save
Then user can see the change of knative service to the new Application defined above


@regression @manual
Scenario: Edit JAR file through drag and drop
Given user has uploaded JAR file
When user opens sidebar of the file
And user clicks on Edit app in Action menu
And user drag and drop a new JAR file in JAR file section
And user updates Build image version
And user clicks on Save
Then user is redirected to topology
And user can see a toast notification of JAR file uploading with link to build logs
@@ -1,25 +1,61 @@
Feature: List view in topology
As a user, I want to see list view in topology

Background:
Given user is at developer perspective
And user has selected namespace "aut-topology-list-view"


@regression, @smoke
Scenario: Topology List view : T-07-TC05
Given user created workload "nodejs-ex-git" with resource type "Deployment"
When user clicks on List view button
And user verifies the filter by resource on top
Then user will see workloads are segregated by applications groupings

@regression
Scenario: Topology filter by resource: T-07-TC06, T-07-TC07
Given user created two workloads with resource type "Deployment" and "Deployment-Config"
When user clicks on List view button
And user clicks the filter by resource on top
And user will see "Deployment" and "Deployment-Config" options with '1' associated with it
And user clicks on Deployment
And user can see only the deployment workload
And user clicks on Deployment-Config
Then user can see only the deployment-config workload
Background:
Given user is at developer perspective
And user has selected namespace "aut-topology-list-view"


@smoke
Scenario: Topology List view : T-07-TC05
Given user created workload "nodejs-ex-git" with resource type "Deployment"
When user clicks on List view button
And user verifies the filter by resource on top
Then user will see workloads are segregated by applications groupings


@regression
Scenario: Topology filter by resource: T-07-TC06, T-07-TC07
Given user created two workloads with resource type "Deployment" and "Deployment-Config"
When user clicks on List view button
And user clicks the filter by resource on top
And user will see "Deployment" and "Deployment-Config" options with '1' associated with it
And user clicks on Deployment
And user can see only the deployment workload
And user clicks on Deployment-Config
Then user can see only the deployment-config workload


@regression, @manual
Scenario: Drag and drop jar file in topology list view
Given user has a jar file named "sample_yaml_upload.yaml"
And user is at the Topology list view page
When user drags and drop jar file on topology
And user gives Application name as "sample-upload-app" and workload Name as "sample-yaml-upload" in Upload JAR file form
And user clicks on Create
Then user is redirected to topology
And user can see a toast notification of JAR file uploading with link to build logs
And user can see deployment "sample-yaml-upload" in application "sample-upload-app" is created in topology


@regression, @manual
Scenario: Drag and drop Incompatible file in topology list view
Given user has a incompatible file
And user is at the Topology list view
When user drags and drop the file on topology
Then the curser will show the action is not available


@regression, @manual
Scenario: View shortcuts menu
Given user has uploaded a jar file
When user clicks on View shortcuts in topology list view
Then user sees shortcut for Drag and drop a JAR file into Topology


@regression, @manual
Scenario: Drag and drop Incompatible file in topology list view
Given user has a incompatible file
And user is at the Topology list view
When user drags and drop the file on topology
Then a toast warning message will appear stating that the file is invalid.
Expand Up @@ -107,3 +107,17 @@ Feature: Create a workload of 'knative Service' type resource
And user clicks on the Knative Service workload "dancer-ex-git"
And user clicks on name KSVC "dancer-ex-git"
Then user will see value of autoscaling.knative.dev/maxScale, autoscaling.knative.dev/minScale, autoscaling.knative.dev/target, autoscaling.knative.dev/targetUtilizationPercentage, autoscaling.knative.dev/window under annotation and containerConcurrency under spec as under spec 5, 1, 3, 70, 9s and 15 respectively


@regression @manual
Scenario: knative resource type in upload JAR file
Given user is at the Add page
When user clicks on the Upload JAR file card
And user drag and drop the file in JAR file section
And user selects appropriate Build image version
And user gives Application name as "sample-upload-app" and workload Name as "sample-yaml-upload"
And user selects resource type as "knative"
And user clicks on Create
Then user will be redirected to Topology page
And user can see a toast notification of JAR file uploading with link to build logs
And user can see knative service "sample-yaml-upload" in application "sample-upload-app" is created in topology