Get More Reviews
Jira Ticket
Project Description / Problem:
Our review clicks are down (see powr.io/admin/reviews) and we mostly get negative reviews these days. We need to update the logic for when and where we are showing the review box on standalone and in the pop out settings.
Proposed Solution:
A/B test adding a “Getting started” progress bar to users/me and response/sales dashboard with a list of actions that the user needs to take to complete the bar. Leaving a review and video testimonial is a part of the list. Additionally, we would like to send emails to new users after they’ve installed their first plugin to leave a review. We will have to wait for this part until we are up and running with Hubspot.
A/B
Name: more_reviews_via_dashboard \ Groups: "control", "progress_bar"
Criteria: New users
Group A: Control
Group B: “Getting started” progress bar (name of group - progress_bar)
- New Users
Group B BDD Specs - Users/Me Dashboard
✅Scenario: User is in Group B
Given the user is in Group B
And is a new user
When they land on users/me dashboard
Then they will see the “Getting Started” progress bar in the top bar to the left of the “help” link that includes steps that they need to complete. The steps consist of:
Create account (Note: this one will also be checked off by default)
Create a plugin (this will be checked if the user already has a saved plugin)
Leave a review
Leave a video testimonial (only for P1 apps)
\ Eng notes:
We need to create a table for user journey, make it flexible to allow for the addition of steps anywhere in the journey.
Table name: user_journey_steps
Columns:
id: primary key \ user_unique_id: string: links to user table via unique_id \ review_status: string: [ null “complete” “skipped”] null - reviews pending \ video_testimonial_status: [ null “complete” “skipped”] null - testimonial pending
In the future we can have more things like onboarding_survey_status etc etc
Implementation:
- Create account (Note: this one will also be checked off by default)
- Create a plugin (user.apps.present?)
- Leave a review \
- check review_status on user_journey_steps, if dismissed of complete - then mark done, else \
- check review_clicks for user.apps and show check for those that exist (note: if user clicks on all review links, then we will mark this as “complete”)
Leave a video testimonial (only for P1 apps)
- check video_testimonial_status on user_journey_steps.. (rest logic similar to review step)
- we need to create a new table video_testimonial_clicks similar to review_clicks
\
Eng notes: \ Progressbar will be built using c
✅Scenario: User clicks on progress bar
Given the user is in group B
And the “Getting started” progress bar is displayed
When they click on the progress bar
Then the tooltip will display
✅Scenario: User hasn’t created a plugin yet
Given the user is in group B
And is a new user
When they land on users/me
If they don’t have any plugins created
Then the progress bar will show 1/3 Getting Started: Create a plugin
And step 3 will be disabled until the user creates a plugin
And the step 4 will be hidden
Note - Instead of Get $25 it should be Get $79.99
✅Scenario: User clicks “Create a plugin” in progress bar list
Given the user is in group B
And they are a new user who has yet to create a plugin
When they click “Create a plugin” in the progress bar list
Then the mini market modal will be triggered
✅Scenario: User creates their first app and the app is P1
Given the user is in group B
And they are a new user who has yet to create a plugin
When they create their first plugin
And the plugin is from P1 list
Then step 2 of getting started list will be checked / completed
And the “Leave a review” step will become enabled
And the “Leave a video review” step will become unhidden and enabled
✅Scenario: User creates their first app and the app is P2
Given the user is in group B
And they are a new user who has yet to create a plugin
When they create their first plugin
And the plugin is from P2 list
Then step 2 of getting started list will be checked / completed
And the “Leave a review” step will become enabled
✅Scenario: User has created a plugin already
Given the user is in group B
And they are a new user
When they land on users/me \ If they already have created a plugin
Then the progress bar will show the second step. 2/4 Getting Started: Leave a review
✅Scenario: User clicks “Leave a review” in getting started list when they only have one app type saved (it does not need to be published)
Given the user is in group B
When they click on “Leave a review” in getting started list
Then the drilldown content will display
And the sub title will say “Leave a 5 star review for {common_name} to help us help others like you!”
And there will be a button to leave a review
Note: A user can only click “Leave a review” if they have a plugin they’ve created. If they don’t have any plugins, this step is disabled/unclickable
Note - “Dismiss” should be “Skip”
Eng Notes:
We use ReviewClick to record user
✅Scenario: Group B user clicks “leave a review” button in the review drilldown content
Given the user is in group B
When they click on “Leave a review” button in the review drilldown content
Then a new tab will open
And they will be redirected to leave a review on the app for the user’s platform
And the “Leave a review” list item will become checked / complete
And the progress bar will advance
Eng notes: use review_url as provided by platform_link.rb file
Scenario: Group B user clicks “Leave a review” in getting started list when they have multiple app types with platform set
Given the user is in group B
And has a platform set
When they click on “Leave a review” in getting started list
Then the drilldown content will display
And the sub title will say “Leave a 5 star review to help us help others like you!”
And there will be a list of all the plugins they have created
Note: A user can only click “Leave a review” if they have a plugin they’ve created. If they don’t have any plugins, this step is disabled/unclickable
✅Scenario: User clicks app type link to review
Given the user is in group B
And clicked “Leave a review”
When they click on a plugin in the list of apps to be reviewed
Then a new tab will open
And they will be redirected to their platform (if platform is known) to leave a review on that app
And that app type list item will become checked / complete
✅Scenario: User creates a new app type while the Leave a review step is not complete
Given the user did not complete Leave a review step
When they create a new app with different type
Then the newly added app type should appear in drilldown of Leave a review
And the number of apps they should review should update
✅Scenario: User reviews all app types they have
Given the user is in the “getting started” tooltip
When they leave a review on all the app types they have
Then the “Leave a review” list item will become checked / completed
And the state of the checkbox should be saved, meaning if the user has created a new app after completion of this step - the progress bar should not change
✅Scenario: User clicks “x” or anywhere outside of tooltip
Given the user has opened the “Getting started” tooltip
When they click the “x” or anywhere outside of the tooltip
Then the tooltip should disappear
Scenario:Group B user clicks “Leave a review” in getting started list when they have multiple app types and no platform set
Given the user is in group B
And has no platform set
When they click on “Leave a review” in getting started list
Then the drilldown content will display
And the sub title will say “Leave a 5 star review to help us help others like you!”
And there will be a button to leave a review
Scenario:Group B user clicks “Leave a review” in getting started list when they have multiple app types and no platform set
Given the user is in group B
And has no platform set
And clicked “Leave a review”
When they click on “Leave a review” in drilldown
Then the new tab will open with G2 reviews
✅Scenario: User clicks “Skip”
Given that the user is in the “getting started” tooltip
And have clicked into reviews
When they click skip
Then the tooltip will close
And the step they dismissed will be marked as done
✅Scenario: User clicks ‘back’ on drilldown content in “Getting Started tooltip”
Given the user has clicked on “Leave a review” or “Leave a video testimonial”
When they click “Back” on the drilldown content
Then the “Getting started” steps will be displayed again
✅Scenario: User cannot click on a checked item in “Getting Started tooltip”
Given the user that has completed a step
When they click on the completed step
Then nothing should happen
Video testimonials
✅Scenario: Video testimonials is shown only for P1 apps
Given the user is in group B
And has no P1 app
Then the “Leave a video testimonial” step should be disabled/unclickable
✅Scenario: User clicks “Leave a video testimonial” in getting started list when they only have one app type
Given the “Leave a video testimonial” step is active for the user
When they click on “Leave a video testimonial” in getting started list
Then the drilldown content will display
And the sub title will say “Share your story and get 1 free month of POWr Business, worth $79.99!”
And there will be a button to leave a review
Note - Business trial will be applied manually by marketing team
✅Scenario: Group B user clicks “leave a video testimonial” button in the review drilldown content
Given the user is in group B
When they click on “Leave a video testimonial” button in the review drilldown content
Then a new tab will open
And they will be redirected to https://powr.usevouch.com/{appname}/share?email={url_encode(email)}&name={url_encode(name)}
And the “Leave a video testimonial” list item will become checked / complete
And the progress bar will advance
Eng notes: url will be https://powr.usevouch.com/{appname}/share?email={url_encode(email)}&name={url_encode(name)} \ NOTE - appnames in db are camelCase, but in this url are lowercase.
Please encode the user’s email address and name (if we have it) in the URL
Scenario: User email and name is visible in video testimonial in usevouch
Given a user has clicked ‘Leave a video testimonial’ and their email/name has been encoded in the URL
When they leave a video review in powr.usevouch.com
Then their email address and name will be visible with their video
✅Scenario: User clicks “x” or anywhere outside of tooltip
Given the user has opened the “Getting started” tooltip
When they click the “x” or anywhere outside of the tooltip
Then the tooltip should disappear
✅Scenario: User clicks “Skip”
Given that the user is in the “getting started” tooltip
And have clicked into reviews or video testimonials
When they click skip
Then the tooltip will close
And the step they dismissed will be marked as done
✅Scenario: User clicks “Leave a video testimonial” in getting started list when they have multiple app types
Given the user is in group B
When they click on “Leave a video testimonial” in getting started list
Then the drilldown content will display
And the sub title will say “Share your story and get 1 free month of POWr Business, worth $79.99!”
And there will be a list of all the plugins they have created
Note - do not include “Get $25” label on each step, mocks are not correct
✅Scenario: User has multiple apps and clicks one of the app links displayed in “Leave a video testimonial”
Given the user has multiple app types
And have clicked on “Leave a video testimonial”
When they click on an app link
Then they will be redirected to a page to leave a video testimonial for that app
✅Scenario: User creates a new app type while the Leave a video testimonial step is not complete
Given the user did not complete Leave a video testimonial step
When they create a new app with different type
Then the newly added app type should appear in drilldown of Leave a review
And the number of apps they need to review should update
✅Scenario: User reviews all app types they have
Given the user is in the “getting started” tooltip
When they leave a review on all the app types they have
Then the “Leave a video testimonial” list item will become checked / completed
And the state of the checkbox should be saved, meaning if the user has created a new app after completion of this step - the progress bar should not change
✅Scenario: User completes or skips “Leave a video review” before “Leave a review” step
Given the user is in the “getting started” tooltip
And did not complete “Leave a review” step
When they leave a video review or skip the step
Then they the “Leave a video testimonial” list item will become checked / completed
And the progress bar should change to ¾
✅Scenario: Edge case - user leaves a review for some plugin but then deletes all the plugins
Given the user is in the “getting started” tooltip
And did complete “Leave a review” step
And did not complete “Leave a video review” step
Then the tooltip should hide
✅Scenario: User completes all steps
When the user completes all steps
Or the first three steps while “Leave a video testimonial” step is not active
Then the progress bar will move to 100%
And disappear
And toast notification with success message appears
✅Scenario: Mobile
When a user is on mobile
Then the progress bar should decrease in size (if needed) to fit the nav
The title should say “Getting started” only
And the steps “2/4” should be removed
Note - the mock is not correct, the steps should not be visible, and the title is shorter
BDD Specs - Form Response Dashboard & Sales Dashboard
Note: the first two steps should always be crossed out / completed on the form response dashboard and sales dashboard. We can safely assume that if the user is at that point then they already have an account and they’ve already created a plugin
✅Scenario: User is on their Form Response Dashboard / Sales Dashboard
Given the user is in Group B
And is a new user
And the last_viewed_url exists for the app
When they are on the Form Response Dashboard
Then they will see the “Getting started” progress bar in the top bar to the left of “editor”.
Scenario: User clicks “Leave a review” or “Leave a video testimonial” on Form Response Dashboard / Sales Dashboard
Given the user is interacting with the “Getting started” progress bar on Form Response Dashboard
When they click “Leave a review” or “Leave a video testimonial”
Then they will see content with a button to leave a review on that app
❌Scenario: Mobile
When a user is on mobile
Then the progress bar should decrease in size (if needed) to fit the nav
BDD Specs - Popup settings
✅Scenario: User is in popup settings
Given the user is in popup settings
And in group B
And the app is from P1 list
When they navigate to the last tab (Design)
And they click “Yes” Emoji on “Did you enjoy using ...” section
Then the two buttons should appear - “Leave a review” and “Leave a video testimonial”
✅Scenario: User is in popup settings
Given the user is in popup settings
And the app is not from P1 list
When they navigate to the last tab (Design)
And they click “Yes” Emoji on “Did you enjoy using ...” section
Then two existing emojis should appear (existing logic)
✅Scenario: User clicks “Leave a review”
Given the user is in popup settings
And are seeing the review modal
When they click “Leave a review”
Then it will be the same logic as the tooltip (open a new tab and redirect them to platform to leave a review for that app if platform is known. Otherwise, send them to G2.)
✅Scenario: User clicks “Leave a video testimonial”
Given the user is in popup settings
And are seeing the review modal
When they click “Leave a video testimonial”
Then it will be the same logic as the tooltip (Open a new tab and send them to the link Emilie will provide to leave a video testimonial for that app)