nodejs как протестировать большой выходной текст

#node.js #unit-testing #debugging #delta #file-comparison

#node.js #модульное тестирование #отладка #дельта #сравнение файлов

Вопрос:

У меня есть проект, скомпилированный js в js.

Я написал filename.js и скомпилировать в filename.out.js , и проверьте вручную filename.out.js , в следующий раз, когда я модифицирую свой компилятор, я надеюсь, что выходные данные не изменятся, если они изменились, покажите разницу.

 function testFile(filename){
  var code = fs.readFileSync(filename   '.js', 'utf-8');
  var expect = fs.readFileSync(filename   '.out.js', 'utf-8');
  assert.equal(pro.compile(code), expect);
}

['groups', 'steps', 'serial', 'parallel'].forEach(testFile);
  

Каждый раз, когда он говорит AssertionError, но этого не должно быть, и он не может выдавать diffrent.

Комментарии:

1. Вы знаете, что они идентичны? Может ли быть разница в пробелах? если вы удалите некоторые реквизиты, такие как: console.log (pro.compile (code). длина); и console.log(expect.length); они одинаковые?

2. спасибо за длину журнала, спаси мою жизнь. на 1 размер больше, странно. trim() тогда они одинаковы.

3. Возможно, пробел в конце файла. Или файл закодирован с помощью спецификации.

Ответ №1:

спасибо за длину журнала, спаси мою жизнь. на 1 размер больше, странно. trim() тогда они одинаковы