1. Про нестатичкский драйвер я думал, да. Масштабируемость, допустим, нужна, если тестов очень много.
Но достичь её можно гораздо проще. Можно же запустить в одном процессе "ant -Dbrowser=firefox", в другом "ant -Dbrowser=chrome" и в третьем "ant -Dbrowser=ie".
Та же самая масштабируемость достигнута? Достигнута. Легко? Легко. Нужно ли что-то ещё изобретать?
Подскажите! Если окажется, что нужно, сделаем в два счёта.
2. Разбивать кейс на 400, конечно, не надо. Пусть будет в одном тесте 400 проверок. Но ведь если хотя бы одна из них упадёт, то и весь тест должен упасть, верно? И зачем тогда гнать его до конца и делать остальные 399 проверок? Только время тратить. Пусть уж он побыстрее упадёт и мы побыстрее его исправим.
Мы сегодня обсуждали этот вопрос с коллегами и пришли к выводу, что SoftAssert может быть полезен только для того, чтобы узнать сразу все 15 проверок, которые зафэйлились, и сразу все 15 исправить. Вы это имели в виду? В таком случае, да, это вроде бы полезно.
Но тут у меня встаёт техническая трудность: такую штуку можно реализовать только под какие-то конкретные фреймворки. Понимаете, сам по себе Selenide универсален, его можно использовать и с JUnit, и с TestNG, и с ScalaTest, и с Groovy и с чем угодно. Мы можем сделать SoftAssert, скажем, для JUnit и TestNG, но остальные фреймворки останутся непокрытыми.
Пожалуй, можно сделать. Я создал таск на гитхабе. Спасибо за предложение.
3. Спасибо, создал таск. Хотя мне до сих пор непонятно, нафига нужен RemoteWebDriver. По той же причине, что п. 1.