This looks like it is going to be very hard to find.
I suspect that when running in Jenkins it is running headless and on your local machine it is not running headless. So maybe that is the place to start - investigating the difference in code.
I really can't provide a better answer than that. I would need all the code to figure it out and a.lot of time.
I did have this error in my tests and it is a little hard to remember why. It was something like I was calling a step from another step definition which may have been in a different class.
I fixed the issue by removing all calls from one step to another and calling the actual method instead.
So instead of something like:
[Given(@"(.*) is logged in")]
public void GivenIsLoggedIn(string name)
{
Given(string.Format("the user {0} exists", name));
Given(string.Format("I log in as {0}", name));
}
I replaced with:
[Given(@"(.*) is logged in")]
public void GivenIsLoggedIn(string name)
{
UserExists(name)
LogIn(name);
}
However the error you have maybe caused by other odd things.
Goodluck,
Adrian.