私は現在、Mochaを使用して問題なく動作するAPIのテストを実行しています。テスト配列は、変数の中に格納されています - ファイルの先頭に「テスト」します。テキストファイルからテスト情報を読み込み、テストを実行する前にその情報を変数に解析したい(一度)。テストを実行する前にmochaのファイルからどのように読み込みますか?
私が前に使用することを試みた()の両方の同期および非同期(下記)
//Synchronously
describe("API Tests", function (done) {
before(function(){
tests = fs.readFileSync('./json.txt', 'utf8');
tests = JSON.parse(tests);
});
for (var i = 0; i < tests.length; i++) {
runTest(tests[i]);
}
done();
});
//Asynchronously
describe("API Tests", function() {
var tests = "";
before(function(){
fs.readFile('./json.txt', 'utf8', function(err, fileContents) {
if (err) throw err;
tests = JSON.parse(fileContents);
});
});
for (var i = 0; i < tests.length; i++) {
runTest(tests[i]);
}});
ノードは、(それがないもの)が存在しないファイルを示すエラーを返し 。
さらに、私はread(両方とも同期的かつ非同期的)にファイルを実行しようとしました。そのケースを検出することができないように見え、「テストは見つかりませんでした」と返されます。
var tests;
fs.readFile('./json.txt', 'utf8', function(err, fileContents) {
if (err) throw err;
tests = JSON.parse(fileContents);
describe("API Tests", function() {
for (var i = 0; i < tests.length; i++) {
runTest(tests[i]);
}
});
});
モカを実行する前にテストケースを含むファイルを読み込むにはどうすればよいですか?私はWebstormでMochaを使用しています。
AFAIK 'describe'は' done'コールバックを渡すべきではありません。 – MarcoL