我跑了
karma start
我得到了这个:
INFO [karma]: Karma v1.7.1 server started at http://0.0.0.0:9876/
INFO [launcher]: Launching browser selenium_chrome with concurrency 5
INFO [launcher]: Starting browser chrome via Remote WebDriver
ERROR [karma]: {"message":"[get(\"http://:9876/?id=77115711\")] Error response status: 13, UnknownError - An unknown server-side error occurred while processing the command. Selenium error: unknown error: unhandled inspector error: {\"code\":-32000,\"message\":\"Cannot navigate to invalid URL\"}\n (Session info: chrome=63.0.3239.84)\n (Driver info: chromedriver=2.33.506120 (e3e53437346286c0bc2d2dc9aa4915ba81d9023f),platform=Windows NT 6.1.7601 SP1 x86_64) (WARNING: The server did not provide any stacktrace i...
它似乎正在尝试访问:
http://:9876/?id=77115711
我的karma.conf.js文件如下:
module.exports = function (config) {
var webDriverConfig = {
hostname: 'qsghub-nprd-lnx-01',
port: 8080
};
config.set({
// base path that will be used to resolve all patterns (eg. files, exclude)
basePath: '',
// frameworks to use
// available frameworks: https://npmjs.org/browse/keyword/karma-adapter
frameworks: ['mocha', 'chai', 'sinon'],
hostname: ip,
// list of files / patterns to load in the browser
files: [
//cdn
'https://cdnjs.cloudflare.com/ajax/libs/async/2.1.5/async.min.js',
'https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.4/lodash.min.js',
'https://cdnjs.cloudflare.com/ajax/libs/node-uuid/1.4.7/uuid.js',
'https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.6.1/angular-animate.js',
'https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.6.1/angular-route.js',
'https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.6.1/angular-sanitize.js',
'https://cdnjs.cloudflare.com/ajax/libs/angular-mocks/1.6.1/angular-mocks.js',
// local
'./public/lib/angular-ui-router/release/angular-ui-router.js',
'./public/lib/ng-csv/build/ng-csv.js',
'./public/app.js',
{pattern: './test/unit/mock-json/*.json', watched: true, served: true, included: false},
process.env.CDT_KARMA_TEST_PATH || './test/unit/**/**/*.spec.js',
],
exclude: [],
preprocessors: {
'./public/shared/html/**/*.html':['ng-html2js'],
'./public/shared/js/filter/*.js': ['coverage'],
'./public/shared/js/services/*.js': ['coverage'],
'./public/shared/js/directive/*.js': ['coverage'],
'./public/shared/js/directive/**/*.js': ['coverage'],
'./public/pages/**/view/**/*.html':['ng-html2js'],
'./public/pages/**/**/**/*.js': ['coverage']
},
ngHtml2JsPreprocessor: {
// If your build process changes the path to your templates,
// use stripPrefix and prependPrefix to adjust it.
stripPrefix: 'public/',
// prependPrefix: 'public/',
// // the name of the Angular module to create
moduleName: "templates"
},
coverageReporter: {
type: 'lcov',
dir: 'karma-reports',
subdir: 'coverage'
},
sonarQubeUnitReporter: {
sonarQubeVersion: '5.x',
outputFile: 'reports/gunit.xml',
useBrowserName: false
},
// test results reporter to use
// possible values: 'dots', 'progress'
// available reporters: https://npmjs.org/browse/keyword/karma-reporter
reporters: ['spec', 'coverage', 'sonarqubeUnit'],
// web server port
host: 'localhost',
port: 9876,
// enable / disable colors in the output (reporters and logs)
colors: true,
// level of logging
// possible values: config.LOG_DISABLE || config.LOG_ERROR || config.LOG_WARN || config.LOG_INFO || config.LOG_DEBUG
logLevel: config.LOG_INFO,
// enable / disable watching file and executing tests whenever any file changes
autoWatch: true,
// start these browsers
// available browser launchers: https://npmjs.org/browse/keyword/karma-launcher
// start these browsers
customLaunchers: {
'selenium_chrome': {
base: 'WebDriver',
config: webDriverConfig,
name: 'Karma',
browserName: 'chrome',
pseudoActivityInterval: 30000
}
},
browsers: ['selenium_chrome'],
// process.env.USER === dftjenkins
plugins: [
// we don't need phantomjs, because --headless chrome removes the need for phantomjs
'karma-chrome-launcher',
'karma-jasmine',
'karma-junit-reporter',
'karma-chai',
'karma-mocha',
'karma-sinon',
'karma-spec-reporter',
'karma-read-json',
'karma-coverage',
'karma-sonarqube-unit-reporter',
'karma-ng-html2js-preprocessor',
'karma-webdriver-launcher'
],
// Continuous Integration mode
// if true, Karma captures browsers, runs the tests and exits
singleRun: true,
// Concurrency level
// how many browser should be started simultaneous
concurrency: 5
})
};
有谁知道我如何克服这个错误?
答案 0 :(得分:1)
Somewhere in your config you have the following line
hostname: ip,
Does ip
have a value? I think this is the reason why it is trying to get http://:9876/?id=77115711
instead of http://something.xyz:9876/?id=77115711
You also have the following lines
// web server port
host: 'localhost',
port: 9876,
Try changing it to these lines, or leave them out since localhost
and 9876
are the default values.
// web server port
hostname: 'localhost',
port: 9876,