【问题标题】:sails js add a custom taskSails js 添加自定义任务
【发布时间】:2015-10-08 04:11:39
【问题描述】:

我正在尝试将自定义任务添加到sails js 应用程序。根据文档,我按以下方式创建文件。 任务/注册/test.js

module.exports = function (grunt) {
    grunt.registerTask('test', ['mochaTest']);
};

tasks/config/mochaTest.js

module.exports = function(grunt) {

    grunt.config.set('mochaTest', {
        test: {
            options: {
                reporter: 'spec',
                captureFile: 'results.txt', // Optionally capture the reporter output to a file
                quiet: false, // Optionally suppress output to standard out (defaults to false)
                clearRequireCache: false // Optionally clear the require cache before running tests (defaults to false)
            },
            src: [
                'test/bootstrap.test.js',
                'test/unit/**/*.js'
            ]
        }
    });

    grunt.loadNpmTasks('grunt-mocha-test');
};

我在 test/unit 文件夹中编写了测试用例。我可以使用 grunt mochaTest 命令运行这些测试。但是使用 'sails lift --test' 命令不会运行测试用例。相反,它只是运行sails 应用程序。我还尝试了以下命令。 () NODE_ENV=测试帆升力 它也不运行测试用例。它只是运行sails 应用程序。 (http://sailsjs.org/documentation/concepts/assets/task-automation) 我在这里错过了什么?

【问题讨论】:

    标签: gruntjs sails.js


    【解决方案1】:

    将“tasks/register/default.js”文件修改为如下代码:

    module.exports = function (grunt) {
        grunt.registerTask('default', ['compileAssets', 'linkAssets', 'grunt-mocha-test', 'watch']);
    };
    

    然后只需使用“sails lift”启动应用程序

    【讨论】:

    • 感谢 ovidio4usa 的回答。正如我之前所说,我可以通过“grunt mochaTest”命令运行测试。但我需要使用这样的命令运行测试。 '风帆升降机--测试'。我不会对每一次起重帆进行测试。
    • 好吧,你为什么不编写一个命令,用“grunt mochaTest”运行测试,然后用“sails lift”提升应用程序?类似于 bash 脚本、Powershell 脚本甚至是 nodejs 脚本。
    • 感谢您的建议。但是在sails文档中提到我们可以通过添加自定义任务名称test来像sails lift --test一样使用。
    猜你喜欢
    • 1970-01-01
    • 2017-11-10
    • 1970-01-01
    • 2015-11-02
    • 2013-03-04
    • 1970-01-01
    • 1970-01-01
    • 2014-12-25
    • 1970-01-01
    相关资源
    最近更新 更多