Skip to content

[Test Automation] Subscription module related scenario coverage (Sprint 8) #1774

@Rubaiyat-E-Mohammad

Description

@Rubaiyat-E-Mohammad

📋 COMPREHENSIVE SUBSCRIPTION SCENARIOS COVERAGE ANALYSIS

Project: WordPress User Frontend Plugin
Test Suite: subscriptionTest.spec.ts
Focus: Subscription Module Testing


🎯 SUBSCRIPTION MODULE OVERVIEW

The WPUF Subscription module allows admins to create subscription packs that users can purchase to gain posting privileges. This test coverage analysis outlines all the scenarios that need to be validated.


🔍 SUBSCRIPTION PACK SETTINGS TO TEST

💰 PAYMENT SETTINGS

Setting Description Test Status
☐ Billing Amount Set pack price (Free = 0) Pending
☐ Expiration Number Duration value Pending
☐ Expiration Period Day/Week/Month/Year Pending
☐ Recurring Payment Enable recurring billing (PRO) Pending
☐ Billing Cycle Number Recurring cycle value (PRO) Pending
☐ Cycle Period Recurring cycle type (PRO) Pending
☐ Billing Limit Number of installments (PRO) Pending
☐ Trial Status Enable trial period (PRO) Pending
☐ Trial Duration Trial period length (PRO) Pending
☐ Trial Duration Type Trial period unit (PRO) Pending

📝 POSTING RESTRICTIONS

Setting Description Test Status
☐ Number of Posts Maximum posts allowed Pending
☐ Number of Pages Maximum pages allowed Pending
☐ Number of Featured Items Maximum sticky/featured posts Pending
☐ Remove Featured on Expiry Unstick posts when subscription expires Pending
☐ Additional CPT Options Custom post type limits Pending

⏰ POST EXPIRATION SETTINGS

Setting Description Test Status
☐ Enable Post Expiration Auto-expire user posts Pending
☐ Post Expiration Time Duration before expiration Pending
☐ Expired Post Status Status after expiration Pending
☐ Enable Mail After Expired Send notification email Pending
☐ Post Expiration Message Custom expiration email Pending

🎨 ACCESS & VISIBILITY

Setting Description Test Status
☐ Plan Name Subscription pack title Pending
☐ Plan Summary Pack description Pending
☐ Plan Slug URL slug Pending
☐ Sort Order Display order on frontend Pending
☐ Publish Time Schedule publication Pending

🧪 TEST SCENARIOS

SCENARIO GROUP 1: Basic Subscription Pack Creation

Test ID Scenario Description
SB0001 Create Free Subscription Pack Create a pack with $0 billing amount
SB0002 Create Paid Subscription Pack Create a pack with billing amount > 0
SB0003 Validate Pack on Frontend Verify pack displays on subscription page
SB0004 User Subscribes to Free Pack Complete free subscription flow
SB0005 Approve Transaction (Admin) Admin approves subscription transaction
SB0006 Validate Subscription in Account Verify subscription in user account

SCENARIO GROUP 2: Posting Limits Validation

Test ID Scenario Description
SB0007 Create Limited Posts Pack Pack with specific post limit (e.g., 5 posts)
SB0008 Subscribe and Post User subscribes and creates posts
SB0009 Validate Post Count Decrease Verify remaining post count decreases
SB0010 Post Limit Exhausted Verify user cannot post after limit reached
SB0011 Unlimited Posts Pack Create pack with -1 (unlimited) posts

SCENARIO GROUP 3: Expiration Settings

Test ID Scenario Description
SB0012 Pack with Day Expiration Pack expires in X days
SB0013 Pack with Week Expiration Pack expires in X weeks
SB0014 Pack with Month Expiration Pack expires in X months
SB0015 Pack with Year Expiration Pack expires in X years
SB0016 Never Expiring Pack Pack with -1 expiration
SB0017 Validate Expiration Date Display Check expiry shows correctly in account

SCENARIO GROUP 4: Post Expiration

Test ID Scenario Description
SB0018 Enable Post Expiration Create pack with post expiration enabled
SB0019 Post Status After Expiration Verify post status changes after expiry
SB0020 Expiration Email Notification Verify email sent on post expiration

SCENARIO GROUP 5: Featured Items

Test ID Scenario Description
SB0021 Limited Featured Items Pack with limited featured/sticky posts
SB0022 Remove Featured on Expiry Featured removed when subscription expires
SB0023 Unlimited Featured Items Pack with -1 featured items

SCENARIO GROUP 6: Multiple Pack Types (Real-World Scenarios)

Test ID Scenario Description
SB0024 Basic Blogger Pack Free pack, 3 posts/month, 0 featured
SB0025 Professional Writer Pack $10/month, 10 posts, 2 featured
SB0026 Premium Publisher Pack $25/month, unlimited posts, 5 featured
SB0027 Trial Pack (PRO) Pack with trial period enabled
SB0028 Recurring Pack (PRO) Pack with recurring payment

SCENARIO GROUP 7: Transaction & Payment Flow

Test ID Scenario Description
SB0029 View Transaction List Admin views all transactions
SB0030 Approve Pending Transaction Admin approves bank transfer
SB0031 Cancel Subscription User cancels active subscription
SB0032 Switch Subscription Pack User switches to different pack

SCENARIO GROUP 8: Validation & Edge Cases

Test ID Scenario Description
SB0033 Pack Display Order Verify sort order affects display
SB0034 Pack Card Information Validate all info on pack card
SB0035 Empty Subscription State Verify "no subscription" message
SB0036 Multi-Pack Frontend Display Multiple packs shown correctly

📍 KEY VALIDATION POINTS

Frontend (Subscription Page)

  • Pack name displayed correctly
  • Billing amount/Free label shown
  • Expiration info displayed
  • Buy Now/Sign Up button visible
  • Pack description/summary shown

Frontend (Account > Subscription Tab)

  • Current subscription pack name
  • Remaining post counts
  • Expiration date
  • Cancel subscription option
  • Subscription status

Admin (Transaction Page)

  • Transaction ID
  • User information
  • Pack details
  • Payment status
  • Approval actions

Admin (Subscription Pack Settings)

  • All payment settings saved correctly
  • All posting restrictions saved
  • Post expiration settings saved
  • Pack published/scheduled correctly

🔄 TEST FLOW SUMMARY

1. Admin Login
   ↓
2. Create Subscription Pack (with various settings)
   ↓
3. Save Pack & Verify Settings
   ↓
4. User Registers/Logs In
   ↓
5. Navigate to Subscription Page
   ↓
6. Validate Pack Card Display
   ↓
7. Subscribe to Pack (Free/Paid)
   ↓
8. Admin Approves Transaction (if needed)
   ↓
9. Validate in Account > Subscription
   ↓
10. Test Posting with Subscription
    ↓
11. Validate Post Count/Limits
    ↓
12. Test Expiration (if applicable)

🏆 PRIORITY TEST SCENARIOS (Phase 1)

High Priority

  1. ✅ SB0001 - Create Free Subscription Pack
  2. ✅ SB0002 - Create Paid Subscription Pack
  3. ✅ SB0003 - Validate Pack on Frontend
  4. ✅ SB0004 - User Subscribes to Free Pack
  5. ✅ SB0005 - Approve Transaction (Admin)
  6. ✅ SB0006 - Validate Subscription in Account
  7. ✅ SB0007 - Create Limited Posts Pack
  8. ✅ SB0017 - Validate Expiration Date Display

Medium Priority

  1. ☐ SB0010 - Post Limit Exhausted
  2. ☐ SB0018 - Enable Post Expiration
  3. ☐ SB0024-SB0026 - Real-World Pack Scenarios

Lower Priority (Phase 2)

  1. ☐ SB0027-SB0028 - PRO features (Recurring/Trial)
  2. ☐ SB0030-SB0032 - Transaction management

📁 FILES TO MODIFY

File Purpose
tests/subscriptionTest.spec.ts Main test file
pages/subscription.ts Page Object Model
pages/selectors.ts DOM selectors
utils/testData.ts Test data constants

🎯 SUCCESS CRITERIA

  • All subscription packs can be created with different settings
  • Pack settings are correctly saved and retrieved
  • Frontend displays pack information accurately
  • Users can successfully subscribe to packs
  • Post limits are enforced correctly
  • Expiration dates are calculated and displayed correctly
  • Transaction flow works end-to-end
  • Account subscription tab shows accurate information

Last Updated: December 2024
Test Framework: Playwright with TypeScript
Test Pattern: Page Object Model (POM)

Metadata

Metadata

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions