使用Jasmine时,有没有办法在规范中实现示例(或表格)?
我非常喜欢Jasmine语法,但能够定义更重要的示例。
我希望将以下内容移植到Jasmine:
Scenario Outline: eating
Given there are <start> cucumbers
When I eat <eat> cucumbers
Then I should have <left> cucumbers
Examples:
| start | eat | left |
| 12 | 5 | 7 |
| 20 | 5 | 15 |
答案 0 :(得分:0)
你可以像这样使用Jasmine:
describe("Eating - Table like Tests", function () {
// the test cases
var testCasesTable = [[12, 5, 7], [20, 5, 15], [7, 3, 4]];
// the tested function - should be in a seperate file
var eating = function (start, eat) {
return start - eat;
};
// the test function
var eatingTest = function (start, eat, left) {
it('Given there are ' + start + ' cucumbers, When I eat ' + eat + ' cucumbers, Then I should have ' + left + ' cucumbers', function () {
expect(eating(start, eat)).toBe(left);
});
};
// the loop function that goes over the test cases and run them
testCasesTable.forEach(function (testCase) {
eatingTest(testCase[0], testCase[1], testCase[2]);
}
);
});