Mocha 无法 运行 与 Nightwatch

Mocha unable to run with Nightwatch

我 运行正在使用 nighwatch.js、selenium 和 chromedriver

宁摩卡

我可以运行用describe, 和它,但是我正在做一个动态测试,所以我需要使用下面的方式来调用,但是我无法得到mocha 运行和守夜人一起走这条路

"use strict";

var nightwatch = require('nightwatch');

var Mocha = require('mocha');
var Test = Mocha.Test;
var Suite = Mocha.Suite;

var mocha = new Mocha();
var suite = Suite.create(mocha.suite, 'Search Box');

suite.addTest(new Test('I\'m a dynamic test', function (done) {
    var client = nightwatch.initClient({
        silent : true
    });
    var browser = client.api();
    browser.url(browser.launch_url);
    client.start(done);
}));

mocha.run();

这是错误 正在启动 selenium 服务器...已启动 - PID:122624

0 passing (0ms)

  Search Box
    1) I'm a dynamic test

There was an error while starting the test runner:

Error: Uncaught, unspecified "error" event. ([object Object])
    at Nightwatch.<anonymous> (E:\gitwork\AAPT-SPZA\src\frontEnd\node_modules\nightwatch\lib\runner\clientmanager.js:66:1
    at HttpRequest.<anonymous> (E:\gitwork\AAPT-SPZA\src\frontEnd\node_modules\nightwatch\lib\index.js:501:10)
    at ClientRequest.<anonymous> (E:\gitwork\AAPT-SPZA\src\frontEnd\node_modules\nightwatch\lib\http\request.js:174:12)

如何解决这个问题并获得 Mocha 运行 Nightwatch?

我使用类似于下面的格式在 Nightwatch.js 中使用 Mocha 实现动态测试。下面的示例不是真正的测试,所以不要尝试 运行 它,但它应该让您很好地了解如何去做。测试结果都显示为具有不同断言的不同测试。除了将 mocha 设置为测试 运行ner.

之外,conf 文件应该看起来像正常情况一样
const async = require('async');
const languages = [{
    name: 'english',
    currency: '$'
    }, {
    name: 'german',
    currency: '€'
}]; 
describe('An example test', () => {
   async.each(languages, function (language) {
    it(`When I click the ${language.name} link my page should be in ${language.name}`, (browser) => {
        browser.url('http://www.google.com');
        homePage.click(`@${language.name}Link`);
        homePage.expect.element('#sub-title').text.to.equal(`Your language is ${language.name}`);
    });
   });
})

注意:使用异步库之类的东西对 运行 异步循环非常重要,nightwatch 不会 运行 每个异步的正常对你来说,它会导致很多错误。