I tried some things and came to the following conclusion:
The timeout I was getting came from Protractor's 'WaitForAngular' method. Now I'm just a tester and have no idea about JaveScript, but I think there might be something wrong in the "clientsidescripts.js" file of Protractor and hence also in the "ClientSideScripts.cs" of Protractor for .NET, which I am using:
else if (window.getAllAngularTestabilities) {
var testabilities = window.getAllAngularTestabilities();
var count = testabilities.length;
var decrement = function() {
count--;
if (count === 0) {
callback();
}
};
testabilities.forEach(function(testability) {
testability.whenStable(decrement);
});
(that's lines 156-167 in Protractor / lines 99-110 in Protractor-net )
In my understanding and from what I tried, in the last line the call of "decrement" should be "decrement()". Otherwise the decrement function will not be called and the callback never happens.
So far, this is working fine for me, I am not stuck with timeouts anymore. On the other hand, the automatic waiting doesn't seem to work all that great now either. But I just found this work-around and will keep playing with it.
Update: The above 'fix' is not working. It does prevent getting timeouts, but it also prevents Protractor from doing its work properly ;)