在 1 个 Spec.js 文件中测试 2 个或更多 JavaScript 个文件?
Testing 2 or more JavaScript files in 1 Spec.js file?
我在考虑如何测试 2 个或更多不同的 javaScript 文件,例如我有 5 个 javascript 文件,我如何测试这 3 个脚本?我是否需要在 1 个 spec.js 文件中像这样对它们进行全部测试:
javascript1.js
javascript2.js(这些 3 对 1 规范文件)
javascript3.js
或者我可以像这样按 1:1 比率测试它们吗:
javascript1.js 到 spec1.js;
javascript2.js 到 spec2.js;
javascript3.js 到 spec3.js;
您应该为您正在测试的每个文件创建一个 Spec 文件。 有时,如果您正在测试的 file/module 非常复杂,这可能是一个想法创建多个规范文件并将它们捆绑在一个文件夹中。
如果您使用的是 Jasmine,我建议您选择 Require JS(或 webpack 或 Browserify)之类的技术,它可以让您在规范文件中需要尽可能多的 modules/javascript 文件,并且将允许您限制测试范围。
但是,如果您采用更传统的方法在标准命名空间 JavaScript 上使用 karma 进行 jasmine 测试,那么您只需要配置 Karma 以在测试前加载您的 JavaScript 文件是 运行 -- 这样所有文件都可以在测试范围内进行测试。
例如,在 karma.conf.js 文件中:
files: [
{
pattern: 'src/js/app/libs/**/*.js',
included: true
},
{
pattern: 'src/js/app/modules/**/*.js',
included: true
},
{
pattern: 'tests/jasmine/*/*Spec.js',
included: true
},
// below line may not be needed outside of RequireJS scope
'tests/jasmine/config/karma-call.js' // where I loop for spec files
]
我在考虑如何测试 2 个或更多不同的 javaScript 文件,例如我有 5 个 javascript 文件,我如何测试这 3 个脚本?我是否需要在 1 个 spec.js 文件中像这样对它们进行全部测试:
javascript1.js
javascript2.js(这些 3 对 1 规范文件)
javascript3.js
或者我可以像这样按 1:1 比率测试它们吗:
javascript1.js 到 spec1.js;
javascript2.js 到 spec2.js;
javascript3.js 到 spec3.js;
您应该为您正在测试的每个文件创建一个 Spec 文件。 有时,如果您正在测试的 file/module 非常复杂,这可能是一个想法创建多个规范文件并将它们捆绑在一个文件夹中。
如果您使用的是 Jasmine,我建议您选择 Require JS(或 webpack 或 Browserify)之类的技术,它可以让您在规范文件中需要尽可能多的 modules/javascript 文件,并且将允许您限制测试范围。
但是,如果您采用更传统的方法在标准命名空间 JavaScript 上使用 karma 进行 jasmine 测试,那么您只需要配置 Karma 以在测试前加载您的 JavaScript 文件是 运行 -- 这样所有文件都可以在测试范围内进行测试。
例如,在 karma.conf.js 文件中:
files: [
{
pattern: 'src/js/app/libs/**/*.js',
included: true
},
{
pattern: 'src/js/app/modules/**/*.js',
included: true
},
{
pattern: 'tests/jasmine/*/*Spec.js',
included: true
},
// below line may not be needed outside of RequireJS scope
'tests/jasmine/config/karma-call.js' // where I loop for spec files
]