На веб-сайте, который мы тестируем, используется проверка подлинности Windows. У нас есть сценарий с использованием Start-Process для запуска Internet Explorer с альтернативными учетными данными пользователя. Похоже что-то вроде:Название таблицы изменений IE PowerShell во время выполнения
$username = 'test\AdminUser1'
$selected_password = '[email protected]$$word'
$selected_runCommand = 'http:\\QA_env1.com\MainPortal.asp'
$cred = New-Object System.Management.Automation.PSCredential -ArgumentList @($username,(ConvertTo-SecureString -String $selected_password -AsPlainText -Force))
$path = $env:programfiles
Start-Process -FilePath "$path\Internet Explorer\iexplore.exe" -LoadUserProfile -Credential $cred -ArgumentList $selected_runCommand
в течение выполнения плана тестирования мы могли бы в конечном итоге с полдюжины открытых сессий, не простой способ отличить их, так как все они имеют одинаковое название. То, что я хотел бы сделать, это добавить идентификатор пользователя (и, возможно, другую информацию) в заголовок. Я усердно искал и нашел примеры PS, используя Start-Process -PassThru, чтобы получить и изменить заголовок окна, который не работает (не уверен, что это потому, что он просто не работает с IE, или если он но код приложения затем перезаписывает его). Кроме того, используя Win32 API для получения оконных ручек и изменения названий, что, опять же, не работает с IE.
Очевидно, что у WebClient есть возможность изменить заголовок вкладки, но у нас были серьезные проблемы с этим подходом (с PS или с Selenium), работающим против требований аутентификации. Конечно, мы можем всплывать диалоговое окно проверки подлинности Windows при запуске сайта, но весь смысл наличия сценария с пользовательским интерфейсом - это сохранение пользователям необходимости запоминать более дюжину идентификаторов тестов и паролей.
Hey Wisman; Для автоматизированных сценариев мы часто работаем таким образом ... запускаем как один пользователь, выполняем некоторые действия, закрываем и запускаем как второй пользователь, оцениваем влияние на второго пользователя действий первого пользователя. Для тестирования на живое/ручное тестирование мы предпочитаем работать асинхронно ... одновременно доступны оба пользователя, поэтому мы можем переключаться туда и обратно. Значительно ускоряет работу. –