Files

79 lines
1.7 KiB
Markdown

# 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