Я работаю с Selenium для создания тестов балансировки нагрузки на веб-сервере. На сайте есть имя пользователя / пароль, и для работы с ним у меня есть CSV-файл, заполненный комбинациями паролей имени пользователя.
Проблема в том, что я использую случайную функцию в Javascript, чтобы выбрать строку из файла CSV и заполнить функциональность входа в систему или детали регистрации.
var csv = browserMob.getCSV("pickStickEmails.csv");
var row = csv.random();
var Email = row.get("email");
var Password = row.get("password");
selenium.type("ctl00_StandardMainBodyPlaceHolder_ctl00_TextBoxEmail", Email);
selenium.type("ctl00_StandardMainBodyPlaceHolder_ctl00_TextBoxEmailConfirm", Email);
selenium.type("ctl00_StandardMainBodyPlaceHolder_ctl00_TextBoxPassword", Password);
selenium.type("ctl00_StandardMainBodyPlaceHolder_ctl00_TextBoxPasswordConfirm", Password);
Это, очевидно, вызывает проблемы при регистрации, если одна и та же запись выбирается дважды во время запланированного запуска. Очевидно, что в случае входа в систему, если запись не выбрана при регистрации, а затем выбрана в тесте, для которого требуется существующая учетная запись, тест не пройден из-за его отсутствия.
У меня вопрос: можно ли каким-то образом заставить browserMob перебирать записи по одной? Очевидно, что когда browserMob начинает нагрузочное тестирование, оно увеличивается, скажем, 10 пользователей, использующих веб-сайт одновременно, каждый из которых выполняет сценарий, который я предполагаю?
Я написал тест, используя Selenium-RC на C # с NUnit, прочитал файл csv в List и затем повторил список. Очевидно, что это запускает каждого пользователя за другим и не имитирует одновременное присутствие нескольких пользователей на сайте.
Любой совет по этому вопросу будет принята с благодарностью.
Спасибо
Jon