Для тестирования нашего настольного приложения мы используем TestComplete/TestExecute. У нас есть проект мастера, который запускается на машине управления. Этот мастер-проект не требует взаимодействия с Desktop, он не тестирует наше приложение.Запустить TestExecute от TeamCity
Этот проект запустит удаленный проект Slave (фактические тесты пользовательского интерфейса нашего приложения, требующие Desktop Interaction) на разных виртуальных машинах через TestExecute напрямую.
В настоящее время мы переводим процесс сборки в TeamCity. На этой машине управления у нас есть агент сборки от TeamCity. Агент сборки работает как служба с системной учетной записью (не локальной учетной записью системы).
Мы не используем локальную системную учетную запись (которая может взаимодействовать с рабочим столом), потому что нам нужна учетная запись домена для доступа к ресурсам домена. И мы не хотим запускать Агент как процесс, мы хотим сохранить его на службе.
Прямо сейчас, мы не можем запускать TestExecute непосредственно из TeamCity, потому что TestExecute требует интерактивного сеанса, а Учетная запись агента сборки не может взаимодействовать с Desktop. Мы попытались выполнить сценарий (выполненный из TeamCity), чтобы создать PSSession с обычным пользователем, имеющим доступ к Desktop и запустить TestExecute из этой PSSession. Но это тоже не работает.
Вот исключение, которое мы имели с обоих случаях (непосредственно и через PSSession):
Start-Process : This command cannot be run due to the error: This operation requires an interactive window station.
At line:3 char:9
+ Start-Process "D:\SmartBear\TestExecute 12\Bin\TestExecute.ex ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (:) [Start-Process], InvalidOperationException
+ FullyQualifiedErrorId : InvalidOperationException,Microsoft.PowerShell.Commands.StartProcessCommand
Кто-нибудь есть решение начать тесты с TestExecute от TeamCity? Как я уже сказал, этот проект не должен взаимодействовать с рабочим столом, он начнет тестирование UI на разных виртуальных машинах через TestExecute напрямую.
Или возможно для учетной записи системы домена (например, той, которую мы используем) для взаимодействия с рабочим столом?
Благодарим вас за ответ! Это исправить мою проблему !! Это была проблема, я не отключил этот uiAccess в манифесте ... –