fixing(gradle)
This commit is contained in:
@@ -0,0 +1,67 @@
|
||||
// Karma configuration for Chrome browser testing
|
||||
// This file fixes Chrome/Chromium path issues and permission errors
|
||||
|
||||
config.set({
|
||||
// Use Chrome with custom configuration to avoid snap permission issues
|
||||
browsers: ['ChromeHeadlessNoSandbox'],
|
||||
|
||||
// Custom browser configuration
|
||||
customLaunchers: {
|
||||
ChromeHeadlessNoSandbox: {
|
||||
base: 'ChromeHeadless',
|
||||
flags: [
|
||||
'--no-sandbox',
|
||||
'--disable-web-security',
|
||||
'--disable-features=VizDisplayCompositor',
|
||||
'--disable-dev-shm-usage',
|
||||
'--disable-gpu',
|
||||
'--remote-debugging-port=9222'
|
||||
]
|
||||
},
|
||||
ChromeHeadlessCI: {
|
||||
base: 'ChromeHeadless',
|
||||
flags: [
|
||||
'--no-sandbox',
|
||||
'--disable-web-security',
|
||||
'--disable-features=VizDisplayCompositor',
|
||||
'--disable-dev-shm-usage',
|
||||
'--disable-gpu',
|
||||
'--headless',
|
||||
'--disable-extensions',
|
||||
'--disable-plugins',
|
||||
'--disable-images',
|
||||
'--disable-javascript',
|
||||
'--disable-default-apps',
|
||||
'--disable-translate',
|
||||
'--disable-background-timer-throttling',
|
||||
'--disable-renderer-backgrounding',
|
||||
'--disable-device-discovery-notifications'
|
||||
]
|
||||
}
|
||||
},
|
||||
|
||||
// Browser detection and fallback
|
||||
detectBrowsers: {
|
||||
enabled: false // Disable auto-detection to use our custom config
|
||||
},
|
||||
|
||||
// Timeout configuration to handle slower CI environments
|
||||
browserNoActivityTimeout: 60000,
|
||||
browserDisconnectTimeout: 10000,
|
||||
browserDisconnectTolerance: 3,
|
||||
|
||||
// Process configuration
|
||||
processKillTimeout: 5000,
|
||||
captureTimeout: 60000
|
||||
});
|
||||
|
||||
// Try to use system Chrome if snap Chromium fails
|
||||
if (process.env.CI || process.env.GITHUB_ACTIONS) {
|
||||
// Use CI-optimized Chrome configuration in CI environments
|
||||
config.browsers = ['ChromeHeadlessCI'];
|
||||
} else {
|
||||
// Use standard no-sandbox configuration for local development
|
||||
config.browsers = ['ChromeHeadlessNoSandbox'];
|
||||
}
|
||||
|
||||
console.log('Chrome browser configuration applied for testing');
|
||||
Reference in New Issue
Block a user