Created
June 23, 2023 19:47
-
-
Save highsmallxu/26f31658beb56cb71903028cd0aedc69 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Feature: Customer Segmentation | |
As a retail business | |
In order to personalize marketing strategies | |
I want to segment customers based on their attributes and behavior | |
Scenario: Label customers as premium if they are between 19 and 60 and made high past purchases | |
Given a customer is <age> years old | |
And the customer has <income_level> income | |
And the customer has made high past purchases | |
When the segmentation process is executed | |
Then the customer should be labeled as premium | |
Examples: | |
| income_level | age | | |
| low | 19 | | |
| low | 35 | | |
| medium | 28 | | |
| high | 42 | | |
| high | 60 | | |
Scenario: Label customers as premium if they are between 19 and 60 and have high income | |
Given a customer is <age> years old | |
And the customer has high income | |
And the customer has made <purchases_level> past purchases | |
When the segmentation process is executed | |
Then the customer should be labeled as premium | |
Examples: | |
| purchases_level | age | | |
| low | 19 | | |
| low | 35 | | |
| medium | 28 | | |
| high | 42 | | |
| high | 60 | | |
Scenario: Label customers as premium if they are above 60, have high income and made high past purchases | |
Given a customer is <age> years old | |
And the customer has high income | |
And the customer has made high past purchases | |
When the segmentation process is executed | |
Then the customer should be labeled as premium | |
Examples: | |
| age | | |
| 61 | | |
| 70 | | |
| 99 | | |
| 42 | | |
| 60 | | |
Scenario: Label customers as basic if they do not meet the above requirements | |
Given a customer is <age> years old | |
And the customer has <income_level> income | |
And the customer has made <purchases_level> past purchases | |
When the segmentation process is executed | |
Then the customer should be labeled as basic | |
Examples: | |
| age | income_level | purchases_level | | |
| 18 | low | low | | |
| 17 | high | high | | |
| 28 | low | medium | | |
| 42 | medium | low | | |
| 60 | medium | high | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment