Я работаю над приложением WPF, которое имеет несколько пользовательских элементов управления. Я использую построитель тестов пользовательского интерфейса для создания сценария для тестирования моего приложения. Когда я запускаю тест, это дает мне исключение, и исключение происходит в строке, показанной ниже.
uIRadComboBoxComboBox.SelectedItem = this.SelectingWeddingParams.UIRadComboBoxComboBoxSelectedItem;
Я пытался использовать щелчки мышью и изменять координаты, но это также не работает.
Код функции:
объявления переменных региона
WpfCustom uIItemCustom = this.UIIntelliClientWindow.UIItemCustom;
WpfComboBox uIRadComboBoxComboBox = this.UIIntelliClientWindow.UIEventInfoRegionCustom1.UIPleasewaitProgressBar.UIRadComboBoxComboBox;
#endregion
// Click custom control
Mouse.Click(uIItemCustom, new Point(448, 307));
// Select 'Wedding' in 'RadComboBox' combo box
uIRadComboBoxComboBox.SelectedItem = this.SelectingWeddingParams.UIRadComboBoxComboBoxSelectedItem;
Исключение вставлено ниже.
Результат StackTrace:
в Microsoft.VisualStudio.TestTools.UITest.Playback.Engine.IScreenElement.FindAllDescendants (Строка bstrQueryId, Object & pvarResKeys, Int32 cResKeys, Int32 nMaxDepth)
в Microsoft.VisualStudio.TestTools.UITest.Playback.ScreenElement.FindAllScreenElement (строковый queryId, глубина Int32, логический singleQueryId, логическое throwException, логическое resetSkipStep)
в Microsoft.VisualStudio.TestTools.UITest.Playback.ScreenElement.FindScreenElement (String queryId, глубина Int32, логическое значение resetSkipStep)
в Microsoft.VisualStudio.TestTools.UITesting.UITestControl.FindFirstDescendant (String queryId, Int32 maxDepth, Int32 & timeLeft)
--- Конец внутренней трассировки стека исключений ---
в Microsoft.VisualStudio.TestTools.UITesting.Playback.MapControlNotFoundException (COMException ex, контекст IPlaybackContext)
в Microsoft.VisualStudio.TestTools.UITesting.Playback.MapAndThrowComException (COMException innerException, контекст IPlaybackContext)
в Microsoft.VisualStudio.TestTools.UITesting.Playback.MapAndThrowException (Исключение исключения, контекст IPlaybackContext)
в Microsoft.VisualStudio.TestTools.UITesting.Playback.MapAndThrowException (Исключение исключения, String queryId)
в Microsoft.VisualStudio.TestTools.UITesting.UITestControl.FindFirstDescendant (String queryId, Int32 maxDepth, Int32 & timeLeft)
в Microsoft.VisualStudio.TestTools.UITesting.SearchHelper.GetElement (логическое значение useCache, ISearchArgument searchArg)
в Microsoft.VisualStudio.TestTools.UITesting.SearchHelper.Search (ISearchArgument searchArg)
в Microsoft.VisualStudio.TestTools.UITesting.UITestControl.FindInternal ()
в Microsoft.VisualStudio.TestTools.UITesting.UITestControl.FindControlIfNeeded ()
в Microsoft.VisualStudio.TestTools.UITesting.UITestControl.SetPropertyPrivate (String propertyName, Object value)
в Microsoft.VisualStudio.TestTools.UITesting.UITestControl. <> c__DisplayClass180_0.b__0 ()
в Microsoft.VisualStudio.TestTools.UITesting.CodedUITestMethodInvoker.InvokeMethod [T] (функция Func`1, элемент управления UITestControl, логический firePlaybackErrorEvent, логический logAsAction)
в Microsoft.VisualStudio.TestTools.UITesting.UITestControl.SetProperty (String propertyName, Object value)
в Microsoft.VisualStudio.TestTools.UITesting.WpfControls.WpfComboBox.set_SelectedItem (строковое значение)
в AddingEventUsingDataDrivenTesting.UIMap.SelectingWedding () в C: \ Users \ Dev2 \ source \ repos \ AddingEventUsingDataDrivenTesting \ AddingEventUsingDataDrivenTesting \ UIMap.Designer.cs: строка 166
в AddingEventUsingDataDrivenTesting.CodedUITest1.CodedUITestMethod1 () в C: \ Users \ Dev2 \ source \ repos \ AddingEventUsingDataDrivenTesting \ AddingEventUsingDataDrivenTesting \ CodedUITest1.cs: строка 30
Сообщение о результате:
Метод тестирования AddingEventUsingDataDrivenTesting.CodedUITest1.CodedUITestMethod1 вызвал исключение:
Microsoft.VisualStudio.TestTools.UITest.Extension.UITestControlNotFoundException: воспроизведению не удалось найти элемент управления с заданными свойствами поиска. Дополнительные детали:
TechnologyName: «МАУ»
FrameworkId: 'Wpf'
ControlType: 'ComboBox'
HelpText: 'RadComboBox'
Экземпляр: '2'Возможно, поиск не удался в «TabList», так как в нем могли быть виртуальные дочерние элементы. Если искомый элемент управления является потомком TabList, то включение его в качестве родительского контейнера может решить проблему. ---> System.Runtime.InteropServices.COMException: ошибка HRESULT E_FAIL была возвращена после вызова компонента COM.