SPRINT 2
SPRINT 2
Harnessing The Power of AGILE
Changes based on Client Feedback:
Feature: Widget Navigation
Scenario 1: Clicking on Overall Sentiment Score widget redirects to Analytics page
Given I am on the Dashboard page
When I click on Overall Sentiment Score widget
Then I should be redirected to 'Analytics' page
Scenario 2: Clicking on Overall Sentiment Distribution widget redirects to Analytics page
Given I am on the Dashboard page
When I click on the Overall Sentiment Distribution widget
Then I should be redirected to 'Analytics' page
Scenario 3: Clicking on Actionables Tracking widget redirects to Actionables page
Given I am on the Dashboard page
When I click on the Actionables Tracking widget
Then I should be redirected to 'Actionables' page
Scenario 4: Clicking on Overall Sentiment Trend Over Time widget redirects to Analytics page
Given I am on the Dashboard page
When I click on the Overall Sentiment Trend Over Time widget
Then I should be redirected to 'Analytics' page
Scenario 5: Clicking on Distribution of Categories widget redirects to Analytics page
Given I am on the Dashboard page
When I click on the Distribution of Categories widget
Then I should be redirected to 'Analytics' page
Scenario 6: Clicking on Top 5 Positive Categories widget redirects to Analytics page
Given I am on the Dashboard page
When I click on the Top 5 Positive Categories widget
Then I should be redirected to 'Analytics' page
Scenario 7: Clicking on Top 5 Negative Categories widget redirects to Analytics page
Given I am on the Dashboard page
When I click on the Top 5 Negative Categories widget
Then I should be redirected to 'Analytics' page
Feature: Overall Sentiment Score & Distribution
Scenario 1: Sentiment Distribution is appropriately colored
Given I am on the Dashboard page
Then Frustrated sentiment is colored red
And Unsatisfied sentiment is colored orange
And Neutral sentiment is colored grey
And Satisfied sentiment is colored green
And Promoter sentiment is colored darkgreen
Scenario 2: All Products and Sources Selected for 01/01/2024
Given I am on the Dashboard page
When the date is set from '01/01/2024' to '01/01/2024'
And All Sources are selected
And All Products are selected
Then I should see the overall sentiment score as '2.3/5'
And I should see the percentage change as 'Not Applicable' A
nd I should see the distribution of sentiment as '30.0, 40.0, 0, 20.0, 10.0'
And I should see the distribution of sentiment add up to '100'
Scenario 3: Positive Percentage Change reflected
Given I am on the Dashboard page
When the date is set from '01/01/2024' to '10/01/2024'
And All Sources are selected
And the products selected are: 'Investments'
Then I should see the overall sentiment score as '2.3/5'
And I should see the percentage change as '↑ 67.9% Increase'
And I should see the distribution of sentiment as '11.1, 55.6, 22.2, 0, 11.1'
And I should see the distribution of sentiment add up to '100'
Scenario 4: Negative Percentage Change reflected
Given I am on the Dashboard page
When the date is set from '10/04/2024' to '10/06/2024'
And the sources selected are: 'Product Survey'
And All Products are selected
Then I should see the overall sentiment score as '2.5/5'
And I should see the percentage change as '↓ -3.5% Decrease'
And I should see the distribution of sentiment as '22.6, 28.4, 19.8, 20.0, 9.2'
And I should see the distribution of sentiment add up to '100'
Sad Scenario 5: No selection of products
Given I am on the Dashboard page
When no Products or Sources dropdown options are selected
Then I should see the overall sentiment score as '0/5'
And I should see the percentage change as 'Not Applicable'
And I should see the distribution of sentiment as '0, 0, 0, 0, 0'
And I should see the distribution of sentiment add up to '0'
Feature: Overall Sentiment Trend Over Time
Scenario 1: Normal View
Given I am on the Dashboard Page,
And I have selected Time Period, Products, Sources
Then I should see a line graph titled "Sentiment vs Time trend for Product(s) (All Subcategories)"
And the X-ticks as dates in format "MONTH DATE"
And the Y-ticks as float numbers
And I should be able to hover over it to reveal its MONTH DATE and sentiment score
Sad Scenario 2: Insufficient overall data
Given I am on the Dashboard Page,
And only a few Products and Sources are selected or a very short Time period Eg. 1 day is selected such that there is very little data over time
Then I should see an error message "No data"
And no graph
Feature: Upload and Analyse Data
Scenario 1: Hovering on a dropdown option updates its color
Given I am on the Upload page
When I click on the "Subcategory" dropdown button
And I hover on a dropdown option
Then the dropdown option should be highlighted
Scenario 2: Available dropdown options
Given I am on the Upload page
When I click on the "Subcategory" dropdown button
Then I should see all 18 products arranged alphabetically as dropdown options
Scenario 3: No selection of dropdown option
Given I am on the Upload page
And Sources are selected
When no Subcategory dropdown options are selected
Then I should see "Subcategory" in the text field of the dropdown button
Scenario 4: Reset selection by refreshing
Given I have selected a Subcategory
When I refresh the page
Then I should still be on the Upload Page
And just see "Subcategory" in the text field of the dropdown button
Scenario 5: Hovering on a dropdown option updates its color
Given I am on the Upload page
When I click on the "Sources" dropdown button
And I hover on a dropdown option
Then the dropdown option should be highlighted
Scenario 6: Available dropdown options
Given I am on the Upload page
When I click on the "Sources" dropdown button
Then I should see all 5 sources arranged alphabetically as dropdown options
Scenario 7: No selection of dropdown option
Given I am on the Upload page
And Sources are selected
When no Sources dropdown options are selected
Then I should see "Sources" in the text field of the dropdown button
Scenario 8: Reset selection by refreshing
Given I have selected a Source
When I refresh the page
Then I should still be on the Upload Page
And just see "Sources" in the text field of the dropdown button
Scenario 9: Drag and Drop 1 file
Given I am on the Upload page
When I drag a file into the Upload area
Then the Upload area should be highlighted
And a Modal should open, informing a successful upload of the product + source + name of my file
And the filters and visualizations on the other pages should make use of the uploaded data
Scenario 10: Drag and Drop 2+ files
Given I am on the Upload page
When I drag multiple files into the Upload area
Then the Upload area should be highlighted
And a Modal should open, informing a successful upload of the product + source + names of my files
And the filters and visualizations on the other pages should make use of the uploaded data
Scenario 11: Close modal
Given I am on the Upload page
And I have the modal open
When I click out of the modal area or the X on the modal
Then the modal should close
Sad Scenario 12: Unable to upload due to unselected product and source
Given I am on Upload page
When I do not select any product or source
And I simply drag and drop a file of valid extension and data format
Then I should be alerted "Please select a subcategory and source."
And my file should not be uploaded
Sad Scenario 13: Unable to upload due to invalid file extension format
Given I am on Upload page
When I have selected a product and source
And I drag and drop a file of invalid extension format
Then I should be alerted "Invalid file format"
And my file should not be uploaded
Sad Scenario 14: Unable to upload due to unsuitable data format (structure, columns, etc)
Given I am on Upload page
When I have selected a product and source
And I drag and drop a file of valid extension format but invalid data format
Then I should see "Classification unsuccessful" in the "Upload Logs"
And my file should not be uploaded
Rspec Report (100%)
Cucumber Report (100%)
Feature: Widget Navigation
Feature: Overall Sentiment Score & Distribution
Feature: Overall Sentiment Trend Over Time
Feature: Upload and Analyse Data
The following is our Cucumber report that was generated for Sprint 2.
JestJS Report (100%)