Это не красиво, но вы можете использовать URLEncoder только для части запроса:
String query = URLEncoder.encode("part1:part2", StandardCharsets.UTF_8);
// Required by server.
query = query.replace("+", "%20");
String uri =
new URI("http", "localhost:1181", "/stream.mjpg", null, null)
+ "?" + query;
Я записал PNUnit как расширение для NUnit почти три года назад, и я рад видеть, что это было наконец интегрировано в NUnit.
Мы используем его ежедневно для тестирования нашего программного обеспечения под различными дистрибутивами и комбинациями. Только дать пример: у нас есть набор тестов тяжелых тестов (длинные) приблизительно с 210 тестами. Каждый из них настраивает сервер и выполняет клиент в командной строке, выполняющей несколько операций (до 210 сценариев).
ну, мы используем тот же комплект для запущения тестов на различных комбинациях Linux и изменениях окон, и также объединенных как Windows Server с клиентом Linux, Windows XP, перспективой, затем контроллер домена, из домена, и так далее. Мы используем те же двоичные файлы и затем просто запустили "агенты" в нескольких полях.
Мы используем ту же платформу для: контрольная нагрузка уравновешивающей нагрузки-> я имею в виду, работающий в блоках быстрее. Выполнение нескольких комбинаций одновременно, и что я думаю, более интересно: определение много клиентских сценариев: два клиента ожидают сервера, чтобы запустить, затем запустить операции, синхронизацию друг с другом и так далее. Мы также используем PNUnit для тестирования загрузки (сотни полей против единственного сервера).
Так, если у Вас есть какие-либо вопросы о том, как настроить его (который еще не прост, я боюсь), спросите.
Также я написал статью давно об этом в DDJ: http://www.ddj.com/architect/193104810
Hope это помогает
Я не знаю, не рассчитывает ли никакой ответ как ответ, но я сказал бы, что Вы исследовали все, и Вы действительно предложили эти 2 возможных решения...
, я еще в замешательстве для любой вещи.
Я работаю над этой самой вещью и нашел , Галлио последний может управлять тестами mbUnit параллельно. Можно управлять ими против сингла Сетка Селена концентратор, который может иметь несколько дистанционного слушания серверов.
я использую последний ночью из Галлио для получения ParallelizableAttribute и DegreeOfParallelismAttribute.
Что-то вещи, которые я заметил, я не могу полагаться TestSet
и TestTeardown
быть изолированным параллельные тесты. Вам будет нужен тест, чтобы выглядеть примерно так:
[Test] public void Foo(){
var s = new DefaultSelenium("http://grid", 4444, "*firefox",
"http://server-under-test");
s.Start();
s.Open("mypage.aspx");
// Continue
s.Stop();
}
Используя эти [SetUp]
атрибут для запуска сессии Селена заставлял тесты не получать удаленный сеанс от s.Start()
.