Initial commit: LinkSyncServer and LinkSyncExtension projects with complete documentation, models, API endpoints, tests, and extension implementation
This commit is contained in:
79
LinkSyncExtension/tests/README.md
Normal file
79
LinkSyncExtension/tests/README.md
Normal file
@@ -0,0 +1,79 @@
|
||||
# LinkSyncExtension Tests
|
||||
|
||||
## Testing Strategy
|
||||
|
||||
Browser extensions are tested differently than server applications:
|
||||
|
||||
1. **Manual Testing** - Primary testing method
|
||||
2. **Firefox Nightly Testing** - Test in development mode
|
||||
3. **Puppeteer Playwright** - Automated E2E tests (optional)
|
||||
|
||||
## Manual Testing Checklist
|
||||
|
||||
### Installation
|
||||
- [ ] Load extension in Firefox
|
||||
- [ ] Verify icon appears in toolbar
|
||||
- [ ] Click icon opens popup
|
||||
|
||||
### Settings
|
||||
- [ ] Enter server URL
|
||||
- [ ] Enter API key
|
||||
- [ ] Select sync mode
|
||||
- [ ] Save settings
|
||||
- [ ] Verify settings persist after reload
|
||||
|
||||
### Bookmark Management
|
||||
- [ ] Add bookmark with form
|
||||
- [ ] Verify bookmark appears in list
|
||||
- [ ] Edit bookmark
|
||||
- [ ] Delete bookmark
|
||||
- [ ] Search filter works
|
||||
|
||||
### Collections
|
||||
- [ ] Load collections list
|
||||
- [ ] Execute query
|
||||
- [ ] Create dynamic collection
|
||||
|
||||
### Sync
|
||||
- [ ] Click "Sync Now"
|
||||
- [ ] Verify sync indicator
|
||||
- [ ] Check last sync timestamp
|
||||
|
||||
### Offline Mode
|
||||
- [ ] Disconnect network
|
||||
- [ ] Add bookmark
|
||||
- [ ] Reconnect network
|
||||
- [ ] Verify bookmark syncs
|
||||
|
||||
## Puppeteer Test Setup
|
||||
|
||||
```javascript
|
||||
// tests/puppeteer.config.js
|
||||
module.exports = {
|
||||
browsers: ['chromium'],
|
||||
config: {
|
||||
launch: {
|
||||
args: ['--no-sandbox', '--disable-setuid-sandbox']
|
||||
}
|
||||
},
|
||||
// Test scripts in tests/
|
||||
}
|
||||
```
|
||||
|
||||
## Run Tests
|
||||
|
||||
```bash
|
||||
# Manual testing - run in Firefox
|
||||
# Install Firefox Nightly and load extension
|
||||
|
||||
# Automated testing (if Puppeteer installed)
|
||||
npm install puppeteer
|
||||
npx puppeteer tests/puppeteer.test.js
|
||||
```
|
||||
|
||||
## Notes
|
||||
|
||||
- Browser extensions cannot be fully automated
|
||||
- Manual testing is primary verification method
|
||||
- Use Firefox Nightly for development testing
|
||||
- Test in different browsers for compatibility
|
||||
Reference in New Issue
Block a user