1

同様の質問がいくつか既に回答されていることは知っています ( Testing custom JavaScript (not Node module) with Intern and Can't get Intern to run Node.js Module ) が、それらの回答を読んだ後でも、まだできませんIntern を使用して実行するいくつかの簡単なテストを取得します。見落としている、または見逃している小さなピースが1つだけあるように感じます。

既存の Javascript プロジェクトで使用するために Intern を評価しようとしています。Node プロジェクトではなく、単純な Javascript です。問題があれば、Windows マシンでこの評価を実行しようとしています。

  1. 私のプロジェクト階層は次のようになります。

    APEFIntern/
        apeform/
            test/
                intern.js      - Intern configuration
                spec_inwf.js   - Tests for inwf
            inwf.js            - Code to test
        intern/
    
  2. インターン構成ファイル:

    // ...
    
    // Configuration options for the module loader; any AMD configuration options supported by the Dojo loader can be
    // used here
    loader: {
        // Packages that should be registered with the loader in each testing environment
        //packages: [ 'apeform' ]
    },
    
    // Non-functional test suite(s) to run in each browser
    suites: [ 'apeform/test/spec_inwf' ],
    
    // ...
    

    私は Node と AMD にかなり慣れていませんが、私のプロジェクトはノード プロジェクトではないため、loader.packages 構成を使用する必要はないと思いますか?

  3. テストファイル spec_inwf.js

    define([
    'intern!bdd',
    'intern!chai!expect',
    'apeform/inwf.js'
    ], function (bdd, expect) {
        with (bdd) {
            describe("inwf suite", function () {
                // Tests
            });
        }
    });
    
  4. 次のコマンドを実行して、テストを実行してみます。

    node client.js config=apeform/test/intern
    

    コマンドから受け取る唯一の出力は次のとおりです。

    Defaulting to "console" reporter
    

Intern 構成で suites 配列を空に設定すると、#4 のコマンドを実行すると、「0/0 tests passed」というメッセージが表示されます。これは正しい出力だと思います。しかし、テスト スイートに接続しようとしても、テストが実行されません。この方程式から他に何が欠けているのかわかりません。どんな助けでも大歓迎です。

4

1 に答える 1

0

spec_inwf.jsテスト ファイルに小さな構文の問題があるようです。

'intern!chai!expect',

する必要があります

'intern/chai!expect',

他のすべては、セットアップで問題ないように見えます。

loader.packages:プロジェクトが Node プロジェクトでない場合、構成を使用する必要がないというあなたの声明は、実際には正確ではありません。ただし、この特定のケースでは、指定したファイル構造で使用する必要はありません。amdjs パッケージのドキュメントは、Intern 固有ではなく AMD 固有であるため、この構成オプションをよりよく理解するために読む価値があります。お役に立てれば。

于 2013-05-20T19:03:56.087 に答える