jasmine parameterized unit test

Ashley Kilgour picture Ashley Kilgour · Jul 29, 2016 · Viewed 13.6k times · Source

Okay as a C# NUnit guy this might be odd.

But does jasmine allow parameterized unit test?

I am not sure if it goes against the "declare" and "it" to make things readable to non programmers.

I have seen some third party plug ins but they are kind of old, not sure if it has been added to jasmine. If I am ment to use a plug in

Just to help anyone who finds this in the future, I have been told on jasmine forum There is no first class support for parameterized tests within Jasmine itself.

Answer

Marco Eckstein picture Marco Eckstein · May 24, 2017

Based on piotrek's answer and the article Parameterized testing in Javascript, you could also use the following approach which uses ES6 syntax:

[
  ['abc', 3],
  ['ab', 2],
  ['', 0],
].forEach(([string, expectedLength]) => {
  it(`should return length ${expectedLength} for string "${string}"`, () => {
    expect(string.length).toBe(expectedLength);
  });
});

I have tested it with the Jest test framework, but it should work with Jasmine as well.