Test Checklist
Complete checklist to verify your BZZE Ads integration is production-ready. Test all scenarios before launching.
✅ Pre-Launch Checklist
1. Basic Integration (Required)
- ☐ SDK loads without errors
- ☐
RewardedAd.init()succeeds - ☐ Valid App ID and API Key configured
- ☐
onRewardcallback grants reward correctly - ☐ Ad plays fullscreen
- ☐ User can complete ad and earn reward
2. Error Handling (Required)
- ☐
onNoFillcallback shows user-friendly message - ☐
onErrorcallback logs errors properly - ☐
onClosecallback handles early exits - ☐ Network errors don't crash game
- ☐ Invalid credentials show clear error
3. User Experience (Required)
- ☐ Ad button shows reward preview ("100 coins")
- ☐ Button disabled when no ads available
- ☐ Loading state shown while fetching ads
- ☐ Video plays smoothly without stuttering
- ☐ Audio works correctly
- ☐ Skip button appears after allowed time
- ☐ CTA button works (if applicable)
4. Mobile Testing (Required)
- ☐ Works on iOS (Safari)
- ☐ Works on Android (Chrome)
- ☐ Fullscreen works on mobile
- ☐ Touch controls work
- ☐ Rotation handled correctly
5. GDPR/COPPA (If Applicable)
- ☐ Consent popup shows for EU users
- ☐
gdprConsentpassed to SDK - ☐ Ads respect user's consent choice
- ☐ COPPA flags set if child-directed
6. Analytics (Recommended)
- ☐ Impressions tracking in dashboard
- ☐ Completions tracking correctly
- ☐ Revenue appearing in dashboard
- ☐ Fill rate makes sense
Testing Script
Copy this script to test your integration:
JavaScript - Test Script
// Enable debug mode
RewardedAd.enableDebug();
// Track test results
const testResults = {
init: false,
adLoaded: false,
adShown: false,
rewardGranted: false,
errors: []
};
// Initialize SDK
RewardedAd.init({
appId: "YOUR_APP_ID",
apiKey: "YOUR_API_KEY",
userId: "test_user_" + Date.now(),
onAdLoaded: function(count) {
console.log('✅ TEST PASS: Ad preloaded (' + count + ')');
testResults.adLoaded = true;
},
onAdShown: function() {
console.log('✅ TEST PASS: Ad is playing');
testResults.adShown = true;
},
onReward: function(reward) {
console.log('✅ TEST PASS: Reward earned!', reward);
testResults.rewardGranted = true;
printTestResults();
},
onNoFill: function() {
console.warn('⚠️ TEST WARNING: No ads available');
printTestResults();
},
onError: function(error) {
console.error('❌ TEST FAIL: Error occurred', error);
testResults.errors.push(error);
printTestResults();
}
});
testResults.init = true;
console.log('✅ TEST PASS: SDK initialized');
// Show ad after 2 seconds
setTimeout(() => {
console.log('🎬 Showing test ad...');
RewardedAd.showAd({
rewardPreview: "TEST: 100 coins"
});
}, 2000);
function printTestResults() {
console.log('\n📊 TEST RESULTS:');
console.log('Init:', testResults.init ? '✅' : '❌');
console.log('Ad Loaded:', testResults.adLoaded ? '✅' : '❌');
console.log('Ad Shown:', testResults.adShown ? '✅' : '❌');
console.log('Reward Granted:', testResults.rewardGranted ? '✅' : '❌');
console.log('Errors:', testResults.errors.length);
if (testResults.errors.length > 0) {
console.error('Error details:', testResults.errors);
}
const allPassed = testResults.init && testResults.adLoaded &&
testResults.adShown && testResults.rewardGranted &&
testResults.errors.length === 0;
if (allPassed) {
console.log('\n🎉 ALL TESTS PASSED! Ready for production.');
} else {
console.log('\n⚠️ SOME TESTS FAILED. Fix issues before launching.');
}
}
Common Issues
- Ads not loading: Check App ID and API Key
- Reward not granted: Make sure reward code is in
onReward - Black screen: CORS issue - add domain to dashboard
- No sound: User interaction required before audio plays