- Backup plugin settings from database
- Note current backlink count
- Have test CSV files ready
- Open plugin settings
- Verify "Domain Filtering" section is visible
- Enter test domain (e.g.,
example.com) - Click Save
- Close settings modal
- Visit an article page with backlinks from that domain
- Verify those backlinks are NOT displayed
- Remove domain from filter
- Save again
- Verify backlinks reappear
- Multiple Domains: Add 3-5 domains (one per line), verify all are filtered
- Subdomain Matching: Block
example.com, verifywww.example.comis also blocked - Case Insensitivity: Add
Example.COM, verify it blocksexample.comlinks - Whitespace: Add domains with trailing spaces, verify they still work
- Empty Lines: Add empty lines between domains, verify no errors
- All Blocked: Block all referring domains, verify "No external references" message
✅ Blocked domains should not appear in:
- Domain group list
- Expanded backlink details
- Total count
✅ Non-blocked domains should still appear normally
Create test CSV: test_redirect.csv
old_url,new_url
https://jlsr.thelawbrigade.com/test-article-1/,https://journal.thelawbrigade.com/jlsr/article/view/[REAL_ARTICLE_ID_1]
https://jlsr.thelawbrigade.com/test-article-2/,https://journal.thelawbrigade.com/jlsr/article/view/[REAL_ARTICLE_ID_2]Note: Replace [REAL_ARTICLE_ID_1] with actual article IDs from your OJS installation.
- Open plugin settings
- Verify "URL Redirect Mapping" section is visible
- Click "Choose File"
- Select test CSV file
- Click "Upload Redirect Mapping"
- Wait for green success message
- Verify message shows correct count (e.g., "2 URL redirect mappings")
- Close and reopen settings
- Verify "Total Mappings" shows correct count
- Verify "Last Updated" shows current date/time
Scenario: Backlink CSV contains old URLs
- Create backlink CSV with old URLs:
ascore,source_title,source_url,target_url,anchor 50,Test Site,https://test.com,https://jlsr.thelawbrigade.com/test-article-1/,Click Here
- Upload this backlink CSV via "Upload Backlinks Data"
- Visit article page with ID matching the NEW URL (from redirect mapping)
- Verify backlink appears on that article page
- Expand domain group
- Verify backlink details are correct
- URL Variations: Test with/without trailing slashes
- Query Parameters: Test old URL with
?param=value - HTTPS vs HTTP: Test if both protocols work
- Case Sensitivity: Test
Example.comvsexample.com - Multiple Mappings to One Article: Map 2+ old URLs to same new URL
- Click "Clear All Redirect Mappings"
- Confirm the dialog
- Verify page reloads
- Verify mapping count shows 0
- Verify last updated date is gone
- Upload backlink CSV with old URLs
- Verify backlinks NO LONGER appear (because mappings cleared)
- Upload redirect mapping CSV (old → new URLs)
- Add spam domains to domain filtering
- Upload backlink CSV containing:
- Old URLs (should be mapped)
- New URLs (should match directly)
- Spam domain URLs (should be filtered)
- Visit multiple article pages
- Verify:
- Old URL backlinks appear (via redirect mapping)
- New URL backlinks appear (direct match)
- Spam backlinks do NOT appear (filtered)
- Counts are accurate
- Grouping is correct
- Upload standard backlink CSV (without old URLs)
- Verify backlinks appear on correct articles
- Verify domain grouping works
- Verify expand/collapse works
- Verify anchor text displays
- Verify reference target shows ("Abstract Page" vs "Full Text")
- Verify REPO galley URL setting still works
- Add REPO galley with WordPress URL to an article
- Verify backlinks to WordPress URL show as "Full Text"
- Verify backlinks to OJS URL show as "Abstract Page"
- All fields visible and functional
- Save button works
- Upload buttons work
- Clear buttons work
- Status messages display correctly
- Large Redirect Mapping: Upload 100+ mappings, verify no errors
- Large Blocked Domain List: Add 20+ domains, verify filtering still fast
- Large Backlink CSV: Upload 1000+ backlinks, verify page loads quickly
- Combined Load: Use all features with large datasets
Test in multiple browsers:
- Chrome/Edge (latest)
- Firefox (latest)
- Safari (latest)
- Mobile browser (iOS/Android)
- Upload text file as redirect mapping → Expect error
- Upload CSV with wrong columns → Expect error
- Upload empty CSV → Expect error
- Upload CSV with malformed URLs → Should skip invalid rows
- Clear mappings when none exist → Should not error
- Clear blocked domains when empty → Should not error
- Save empty domain filter → Should clear filter
- Upload duplicate mappings → Should use last occurrence
- Upload redirect mapping
- Clear OJS cache
- Restart web server
- Verify mappings still exist
- Verify backlinks still match correctly
-
Prepare Redirect Mapping CSV:
- List all old
jlsr.thelawbrigade.comURLs - Match to new
journal.thelawbrigade.com/jlsrarticle IDs - Save as CSV
- List all old
-
Upload Redirect Mapping:
- Upload your actual redirect mapping CSV
- Verify count matches your URL list
-
Add Domain Filtering (optional):
- Add any spam/unwanted domains
-
Upload Real Backlink Data:
- Export from SEMrush/Ahrefs
- Upload via plugin
- Wait for success message
-
Verify Results:
- Visit 5-10 different article pages
- Verify backlinks appear correctly
- Check that old URLs are matched to new articles
- Verify counts are reasonable
- Check mobile display
If issues occur:
- Check browser console for JavaScript errors
- Check PHP error logs for backend errors
- Verify CSV file encoding (UTF-8)
- Test with minimal data first (2-3 mappings, 2-3 backlinks)
- Clear browser cache and retry
✅ Domain Filtering Works If:
- Blocked domains don't appear in backlink display
- Non-blocked domains still appear
- No errors in console
✅ Redirect Mapping Works If:
- Old URLs in backlink CSV match to correct new articles
- Upload shows success message with count
- Settings show correct mapping count and date
✅ Combined Features Work If:
- Both features can be used simultaneously
- No conflicts between features
- Performance is acceptable
- All tests passed
- No console errors
- No PHP errors in logs
- Performance is acceptable
- Documentation is clear
- Ready for production use
If critical issues found:
- Disable plugin temporarily
- Clear problematic settings from database:
DELETE FROM plugin_settings WHERE plugin_name = 'backlinktrackerplugin' AND setting_name IN ('blockedDomains', 'redirectMappingData', 'redirectMappingCount', 'redirectMappingDate');
- Re-enable plugin
- Report issue details
- Document any issues found
- Note any improvements needed
- Update documentation if needed
- Train other admins on new features
- Schedule regular backlink data updates
Use this space to record test results, issues, or observations:
Date: ___________
Tester: ___________
Test Results:
- Domain Filtering: PASS / FAIL / NOTES
- Redirect Mapping: PASS / FAIL / NOTES
- Combined Usage: PASS / FAIL / NOTES
Issues Found:
1.
2.
Performance Notes:
-
Recommendations:
-