0
Javascript Unitのテストから基本的な例(第1章)を設定しました。ジャスミンが仕様を見つけられないのはなぜですか?
マイランナーファイル:私は同じ方法であると思われるものではなく、私自身のスペックでは、第2章のための新しいディレクトリを設定するとき、私は何のスペックが実行されていないのですかなぜ、
持っている:私のspecファイルは
spec/SimpleMathSpec.js
<script type="text/javascript" src="src/SimpleMath.js"></script>
<script type="text/javascript" src="spec/SimpleMathSpec.js"></script>
あると私のソースファイルが
彼らの両方が存在しないsrc/SimpleMath.js
です:
$ ls src/SimpleMath.js
src/SimpleMath.js
10:56:21 durrantm U2017 /home/durrantm/Dropbox/_/jasmine_2017/Chapter2
$ ls spec/SimpleMathSpec.js
spec/SimpleMathSpec.js
ネットワークタブは、それらがOKを発見され示して - しかしわからない理由をゼロサイズ???
内容:
spec/SimpleMathSpec.js:
describe("SimpleMath", function() {
var simpleMath;
beforeEach(function() {
simpleMath = new SimpleMath();
});
it("should calculate a factorial for a positive number", function() {
result=simpleMath.getFactorial(3);
expect(result).toEqual(6);
});
it("should calculate a factorial for 0 - which will be zero", function() {
result=simpleMath.getFactorial(0);
expect(result).toEqual(0);
});
it("should calculate a factorial for -3 - which will raise an error", function() {
result=simpleMath.getFactorial(-3);
expect(result).toThrow Error;
});
});
src/SimpleMath.js:
SimpleMath = function() {};
SimpleMath.prototype.getFactorial = function(number) {
if (number < 0) {
throw new Error("Can't be less than zero");
}
else if (number == 1 || number == 0) {
return 1;
}
else {
return number * this.getFactorial(number-1);
}
}
SimpleMath.prototype.signum = function(number) {
if (number > 0) {
return 1;
} else if (number == 0) {
return 0;
} else {
return -1;
}
}
SimpleMath.prototype.average = function(number1, number2) {
return (number1 + number2)/2;
}
0 Bのサイズは、ファイルがローカルにロードされている(つまり、 'file://')ため、ネットワークのアクティビティがないためです。テストファイルのtypoと思われるものがあります: 'expect(result).toThrow Error;は' expect(result).toThrowError(); 'でなければなりません。コンソールにエラーがありますか? –
はい、それでした。 –