使用NUnit编写单元测试时,您可以使用TestCaseSourceAttribute
提供多个数据输入组合。来自NUnit's documentation的示例:
private static object[] DivideCases = {
new object[] {12, 3, 4},
new object[] {12, 2, 6},
new object[] {12, 4, 3}
};
[Test, TestCaseSource("DivideCases")]
public void DivideTest(int n, int d, int q) {
Assert.AreEqual(q, n/d);
}
这将使用DivideTest
字段提供的参数运行DivideCases
三次。
有没有办法与Jasmine实现类似的设置?
答案 0 :(得分:0)
我知道这是一个老问题,但这种方法对我有用。
describe("divideTest", function () {
const testCases = [
{ n: 12, d: 3, q: 4 },
{ n: 12, d: 2, q: 6 },
{ n: 12, d: 4, q: 5 }
];
testCases.forEach(test => {
it(`should divide ${test.n} by ${test.d} correctly`, () => {
expect(test.n / test.d).toEqual(test.q);
});
});
});
我在这里找到了解决方案https://blog.harveydelaney.com/running-multiple-test-cases-in-jasmine/