Chai测试框架没有给出通过单元测试的消息

时间:2017-07-09 17:13:42

标签: unit-testing mocha chai

这是我的代码:

> mocha



  0 passing (5ms)

当我运行节点测试时,我得到以下内容:

{
  "name": "test-app",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "mocha"
  },
  "author": "",
  "license": "ISC",
  "dependencies": {
    "chai": "^4.0.2",
    "mocha": "^3.4.2"
  },
  "devDependencies": {
    "chai":"*",
    "mocha":"*"
  }
}

package.json:

internal class PlayBackHelpers
{
    public static bool HandleWindowSecurityDialog(string username, string password)
    {
        int success = 0;
        try
        {
            if (username != "" && password != "")
            {
                AutoItActions.WaitForWindow(ControlIdentifiers.WindowsSecurity);
                AutoItActions.ClearAndType(ControlIdentifiers.WindowsSecurity, "", ControlIdentifiers.WindowsSecurityUserName, username);
                AutoItActions.ClearAndType(ControlIdentifiers.WindowsSecurity, "", ControlIdentifiers.WindowsSecurityPassword, password);
                success = AutoItActions.Click(ControlIdentifiers.WindowsSecurity, "", ControlIdentifiers.WindowsSecurityOk);
            }
        }
        catch (Exception e)
        {
            //Dont throw.
        }
        return success == 1 ? true : false;
    }

1 个答案:

答案 0 :(得分:0)

告诉Mocha你有一个测试的方法是把你的测试作为回调到Mocha提供的it函数。 describe分组测试但未定义任何测试。因此,如果您的describe没有it,那么您就没有测试。

Chai对Mocha的运作方式没有影响。摩卡并不关心柴是否在那里,你在使用它。当断言失败时,您可以将Mocha与任何引发异常或拒绝承诺(并从测试中返回承诺)的断言库一起使用。 Chai是一个这样的断言库。你可以使用Chai和另一个测试跑者而不是Mocha。