Как исправить «Недостаточно памяти» в тестах настольных приложений с использованием CodedUI - PullRequest
0 голосов
/ 02 января 2019

Я работаю над CodedUI (VS2015) для тестирования приложения Windows. У меня есть около 318 тестовых случаев, которые выполняются с использованием теста Ordered. Сценарий будет выполнен и покажет, сколько тестовых случаев не пройдено или пройдено, но для нескольких последних выполнений выполнение блокируется между ними. Полное выполнение не выполнено, и Out of memory exeption отображается в трассировке стека. Каждый раз, когда я выполняю скрипт, он останавливается на разных тестах.

Эта проблема существует для всех версий приложения Windows. Попытка выполнить в 8 ГБ, а также 16 ГБ конфигурации ОЗУ, тем не менее проблема была там.

Expected: Script should either pass or run.
Actual: Result29 Message:   Error calling Initialization method for test class
System.OutOfMemoryException: Exception of type 'System.OutOfMemoryException' was thrown.

Я использую упорядоченный тест для выполнения скрипта, и между скриптами произошел сбой. ранее скрипты работали правильно.

StackTrace: пожалуйста, найдите трассировку стека, полученную после выполнения. Я получил много таких исключений после пробного запуска.

Результат148 Имя: 290- TC_747174_Cash_A_Check_DataValidation_CheckID_OnUsDetails_1 (cashacheck2) Результат148 Результат: не удалось Результат148 Продолжительность: 0: 00: 00.0245286 Результат148 StackTrace: в System.Threading.Thread.StartInternal (основной принцип IP, StackCrawlMark & ​​stackMark) в System.Threading.Thread.Start (StackCrawlMark & ​​stackMark) в System.Threading.Thread.Start () в Microsoft.VisualStudio.TestTools.UITest.Extension.Uia.UiaWorker.StartWorkerThread () в Microsoft.VisualStudio.TestTools.UITest.Extension.Uia.UiaTechnologyManager.StartSession (логическая записьSession) в Microsoft.VisualStudio.TestTools.UITest.Framework.UITestPluginManager. <> c__DisplayClass1_0.b__0 (менеджер UITechnologyManager) в System.Threading.Tasks.Parallel. <> c__DisplayClass42_0`2.b__1 () в System.Threading.Tasks.Task.InnerInvoke () в System.Threading.Tasks.Task.InnerInvokeWithArg (Task childTask) в System.Threading.Tasks.Task. <> c__DisplayClass176_0.b__0 (Объект) Result148 Сообщение: ошибка вызова метода инициализации для тестового класса UltraDataAutomation.TestCases.CheckList_MemberTransactionsFeature: System.OutOfMemoryException: исключение типа 'System.OutOfMemoryException' было сгенерировано.

1 Ответ

0 голосов
/ 03 января 2019

Возможных причин может быть много, например, вы выделяете память внутри циклов и не освобождаете ее должным образом. Та же проблема может возникнуть, если вы открываете много подключений к данным и неправильно закрываете / утилизируете их.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...