1
我正在開發一個項目,其中我必須用Jasmine測試我的js代碼。我寫這樣的測試。如何在Jasmine.js中編寫方案
describe("Function: foo() --- File: foo.js", function() {
it("if input is integer", function() {
var result = foo(123);
expect(result).toBe(123);
});
it("If input is string", function() {
var result = foo('String');
expect(result).toBe('String');
});
it("If input is empty string", function() {
var result = foo('');
expect(result).toBe('');
});
});
正如代碼所示,我一直重複同樣的'it'塊。只有改變的東西是描述,輸入到「toBe」中的功能和輸出。我想詢問是否有與我可以在我的測試中像這樣的列表/字典添加我的情景,並利用它們不使用任何for循環
describe("Function: foo() --- File: foo.js", function() {
scenarios = [
{description: "if input is integer", input: 123, output: 123},
{description: "if input is String", input: "String", output: "String"},
{description: "if input is empty string", input: '', output: ''},
];
//This will run for each scenario in above list
it(this.description, function() {
var result = foo(this.input);
expect(result).toBe(this.output);
});
});
任何一個可以幫助我在這種情況下呢?
我得到錯誤「的ReferenceError:使用沒有定義」當我用這個。 –
@mhassan我認爲它已被棄用。請嘗試編輯的代碼。它應該工作。 – Zakaria
它的工作。非常感謝。 @Zakaria。 –