/** * @file karma配置 * @author fe.xiaowu@gmail.com */ var base = require('./karma.conf.base.js'); var customLaunchers = { // Safari sl_ios_safari: { base: 'SauceLabs', browserName: 'Safari' }, // 安卓浏览器 sl_android_4_4: { base: 'SauceLabs', browserName: 'android', version: '4.4' }, sl_android_5: { base: 'SauceLabs', browserName: 'android', version: '5' }, sl_android_6: { base: 'SauceLabs', browserName: 'android', version: '6' }, // chrome sl_ios_chrome: { base: 'SauceLabs', browserName: 'chrome' }, // sl_ie_8: { // base: 'SauceLabs', // browserName: 'internet explorer', // version: '8' // }, sl_ie_9: { base: 'SauceLabs', browserName: 'internet explorer', platform: 'Windows 7', version: '9' }, sl_ie_10: { base: 'SauceLabs', browserName: 'internet explorer', platform: 'Windows 8', version: '10' }, sl_ie_11: { base: 'SauceLabs', browserName: 'internet explorer', platform: 'Windows 8.1', version: '11' }, sl_firefox: { base: 'SauceLabs', browserName: 'firefox', platform: 'Windows 7' } }; // 不支持本地运行 if (!process.env.TRAVIS) { console.error('不支持本地运行, 请使用 npm run test!'); process.exit(1); } // 变量检查 if (!process.env.SAUCE_USERNAME || !process.env.SAUCE_ACCESS_KEY) { console.error('---------------'); console.error('Make sure the SAUCE_USERNAME and SAUCE_ACCESS_KEY environment variables are set.'); console.error('---------------'); process.exit(1); } module.exports = function (config) { var options = Object.assign(base(config), { reporters: ['mocha', 'saucelabs'], sauceLabs: { 'testName': 'layui', 'recordVideo': false, 'recordScreenshots': false, 'startConnect': false, 'connectOptions': { 'no-ssl-bump-domains': 'all' }, 'public': 'public', 'build': 'layui-build-' + process.env.TRAVIS_BUILD_NUMBER, 'tunnelIdentifier': process.env.TRAVIS_JOB_NUMBER }, customLaunchers: customLaunchers, browsers: Object.keys(customLaunchers), captureTimeout: 1000 * 60 * 5, browserNoActivityTimeout: 1000 * 60 * 5 }); config.set(options); };