1.テスト モジュールは常に AMD モジュールとして作成する必要がありますが、必要なクライアント側コードをテストできます。テスト モジュール内で、AMD 以外のコードを他のモジュールと同様に依存関係として指定し、スクリプトが作成するグローバル変数にアクセスします。
define([
'intern!tdd',
'intern/chai!assert',
'intern/order!myPackage/myFoo.js'
], function (tdd, assert /* note, no assignment here */) {
tdd.suite('foo suite', function () {
tdd.test('something in foo', function () {
// accessing a global variable created by `myPackage/myFoo.js`
assert.ok(window.myFoo, 'Global myFoo object should exist');
});
});
});
suites
2.配列でテスト モジュールを指定することを除いて、これを機能させるために Intern 構成で明示的に何かを行う必要はありません。
3. テストが必要なクライアント側アプリケーションに推奨されるディレクトリ構造は、次のようになります。
/ - your entire application
src/
index.html - your app’s entry-point HTML
app/ - your app package, containing application-specific JavaScript to be tested
foo.js - Some module `foo`
tests/ - Intern tests for `app`
foo.js - Tests for `foo`
intern.js - Intern configuration for `app`
node_modules/
intern/
もちろん、これはアプリケーションがすでにどのように設計されているかによって異なりますが、「ゼロから始める」アプローチから、これが一般的に推奨されるディレクトリ構造です。