Перейти к содержимому

Публикации Qwertylolman

40 публикаций создано Qwertylolman (учитываются публикации только с 29 апреля 2023)



#79449 ТС не воспроизводит клики мышкой.

Отправлено автор: Qwertylolman 01 ноября 2010 - 13:13 в SmartBear (AutomatedQA) - Functional Testing

Тестируется интегрированное в оболочку винды ПО. win xp sp3 со всеми обновлениями, tc7.52
в их саппорт не обращаюсь, очень "порадовало" когда они думали две недели и из всех необходимых мне ответов получил только ссылку на SDK для моей версии :/

тестируется копирование на, условно говоря, флешку и с неё на пк. скрипт открывает папку с файлами для копирования, копирует нужную папку, закрывает все это, открывает флешку и имитирует нажатие ctrl+v, после чего я замеряю время копирования файлов. после этого я имитирую ctrl+a, ctrl+с, закрываю флешку, открываю папку на пк и копирую туда файлы с флешки с таким-же замером времени. в конце теста система приводится в изначальное состояние. скрипты были записаны через Record Script, после допилены напильником (дописаны дилеи, таймеры). в начале я написал и отладил копирование на флешку.
как показала практика, такой вариант Aliases.Explorer.wndTestCopying.SHELLDLL_DefView.DUIViewWndClassName.DirectUIHWND.CtrlNotifySink.FolderView обращения к алиасам оказался стабильнее чем тот который генерирует ТС во время записи.

пример функции, отвечающей за старт теста:
function CopyOneToFlash()
{
//открываются нужные папки    
    OpenFolderForCopyingToFlash();
//предполагается, что папка wndFilesToFlash уже открыта
    Aliases.Explorer.wndFilesToFlash.SHELLDLL_DefView.DUIViewWndClassName.DirectUIHWND.CtrlNotifySink.FolderView.ClickItem("One", 0);
    Aliases.Explorer.wndFilesToFlash.SHELLDLL_DefView.DUIViewWndClassName.DirectUIHWND.CtrlNotifySink.FolderView.Keys("^c");
    Aliases.Explorer.wndFilesToFlash.Close();
//открываю папку в которую необходимо скопировать
    CommonScripts.OpenFlashDisk();
//запускаю само копирование с таймером и логированием
    CopyToFlashDisk();
}
//***
function CopyToFlashDisk()
{    
    Aliases.Explorer.wndCabinetWClass3.SHELLDLL_DefView.DUIViewWndClassName.DirectUIHWND.CtrlNotifySink.FolderView.Keys("^v");
    CommonScripts.ListenCopyWindow();
    Delay(2000);
}
короче, оно работало и работало стабильно. пока я не добавил копирование с флешки на пк. вот эта функция запускает весь кейс
//***
function StartCopyOne()
{
    try
    {        
        CommonScripts.OpenRootTestDataFolder();
        ToFlash.CopyOneToFlash();
        //ToPC.StartCopyFromFlashToPC();
        CommonScripts.ClearFlashDisk();
        CommonScripts.CloseFlashDisk();
    }
    catch (exception)
    {
        Log.Error("Error", exception.description);
    }
}
стоит раскомментировать ToPC.StartCopyFromFlashToPC() и тест валится. вот в этом методе, который при вызове из ToFlash.CopyOneToFlash() отлично срабатывает после чего папка закрывается
function OpenRootTestDataFolder()
{    
    Aliases.Explorer.wndShell_TrayWnd.ReBarWindow32.ToolbarWindow32.ClickItem("Show Desktop", false);
    Delay(1000);
    Aliases.Explorer.wndWorkerW.SHELLDLL_DefView.FolderView.DblClickItem("My Computer", 0);    
    Delay(1000);
    Aliases.Explorer.wndCabinetWClass.SHELLDLL_DefView.DUIViewWndClassName.DirectUIHWND.CtrlNotifySink.FolderView.DblClickItem("System (C:)", 0);            
    Delay(1000);
    Aliases.Explorer.wndCabinetWClass.SHELLDLL_DefView.DUIViewWndClassName.DirectUIHWND.CtrlNotifySink.FolderView.DblClickItem("TestCopying", 0);
    Delay(2000);
}



#78819 Обсуждаем TC: плюсы\минусы, мнения...

Отправлено автор: Qwertylolman 14 октября 2010 - 14:24 в SmartBear (AutomatedQA) - Functional Testing

это только у меня ТС часто теряет контекстные меню, пункты в контекстном меню и папки? наше по интегрируется в оболочку винды, соответственно, некоторый функционал надо тестировать через проводник. от ТС не получилось добиться ничего :/ он ни разу не нашел параметр wItem у ListView, постоянно теряет нужные папки и контекстные меню. вчера, например, коек-как отладил первую часть теста, написал вторую, прогоняю тест - ТС уже не может открыть диск С из папки "Мой Компьютер" :/



#78814 Functional Tester и контекстные меню, тестирование интеграции в оболоч

Отправлено автор: Qwertylolman 14 октября 2010 - 13:07 в IBM Rational - Functional Testing

Какая версия тестера. На сайте IBM или в хелпе почитайте, какую версию .Net поддреживает тестер.
Возможно он просто не поддерживаем ваши технологии..
Вообще тестер штука медленная, советую тесткомплит или QTP. Они развиваются быстрее всего.


11 версия. в его пользу пока только применение Java. от ТС (7.52) как раз стараюсь уйти. достали его глюки. во время тестирования функций интегрированных в оболочку винды постоянно теряет объекты папки по которым надо кликать, часто теряет пункты в контекстных меню, не поддерживает DevComponents, отсутствие нормальной документации. сейчас как раз добрался до QTP. как-то он странно работает с окнами... когда в настройках выбрано "открывать каждую папку в новом окне" - справляется, иначе тупит (судя по сгенерированному им коду, он не обновляет свои мапинги.)



#78804 Functional Tester и контекстные меню, тестирование интеграции в оболоч

Отправлено автор: Qwertylolman 14 октября 2010 - 09:19 в IBM Rational - Functional Testing

Скачал триал версию, исследую возможности =) возникают проблемы с контекстными меню. в приложении которое надо протестировать (.Net 3.5 + DevComponents) он не воспроизводит клики правой кнопкой мышки. в набросанной форме (.Net3.5) с контекстным меню он не воспроизводит нажатие по меню.
в чем причина?

Наш ПО интегрируется в оболочку windows, создаются специальные папки в MyComputer. можно-ли покрыть эти моменты с помощью Functional Tester?



#78570 Как определить существует ли папка

Отправлено автор: Qwertylolman 06 октября 2010 - 11:59 в SmartBear (AutomatedQA) - Functional Testing

Точно так же как и с деревом - есть проперти wItem у парента правой части, только там несколько уровней у него wItem(i, j), где i - индекс чайлда, а j - описание (0 - name, 1 - type, 2 - total size, 3 - free space etc...но они, в зависимости от набора колонок и их порядка, могут меняться)

нет там такого свойства ^| вроде есть, а во время выполнения скрипта пропадает.



#78459 Как определить существует ли папка

Отправлено автор: Qwertylolman 01 октября 2010 - 08:26 в SmartBear (AutomatedQA) - Functional Testing

Если надо проверить именно в My Computer, то можно просто взять элементы дерева непосредственно из окна - где-то так:

да, похоже что это то что надо. а нет-ли какого-то метода для обхода папок не из дерева, а из правой части окна? тестирование предполагает использование как эксплорера так и обычного окна.

скриншоты выложить не могу, у нас строгая политика на счет неразглашения :/

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



#78423 Как определить существует ли папка

Отправлено автор: Qwertylolman 30 сентября 2010 - 11:02 в SmartBear (AutomatedQA) - Functional Testing

не имею ни малейшего понятия каким образом там создается папка. она появляется в типе "Others", рядом с панелью управления. создается при инсталляции нашего ПО. из примеров могу привести ПО от Нокии/Самсунга. после их установки, рядом с панелью управления появляется папка для доступа к файлам на телефоне.



#78420 Как определить существует ли папка

Отправлено автор: Qwertylolman 30 сентября 2010 - 10:00 в SmartBear (AutomatedQA) - Functional Testing

TC 7.52 JScript
в My Computer должна создавать папка на подобии "Control Panel". как определить её существование? пути вида "C:\foldername" у неё нет.

пробовал Aliases.Explorer.wndCabinetWClass.SHELLDLL_DefView.DUIViewWndClassName.DirectUIHWND.CtrlNotifySink.FolderView.Exists("foldername") но выдает эксепшн "Object doesn't support this property or method"

да, в этой папке тоже будут папки. и тоже надо будет определить их существование =) так-же не представляю себе как это сделать.



#78208 Взаимодействие скриптов из разных проектов

Отправлено автор: Qwertylolman 23 сентября 2010 - 08:47 в SmartBear (AutomatedQA) - Functional Testing

здравствуйте.

да, он был в юникоде.

а вот этот метод прокатит, если его запускать через script extension? как я понял, TestedApps фишка чисто TestComplete'а =) сообразит-ли скрипт откуда вытаскивать приложение? естественно, при условии запуска всего съюита из ТС.
function GetApp()
{
        try
  {
    var app = TestedApps["testedAppName"];              
                return app;
  }
  catch(exception)
  {
    Log.Error("Exception", exception.description);
  }
}



#78187 Взаимодействие скриптов из разных проектов

Отправлено автор: Qwertylolman 22 сентября 2010 - 13:20 в SmartBear (AutomatedQA) - Functional Testing

да, со script extension - почти то что надо. но возникла такая проблема, скрипт на java не импортируется. когда пишу "имя.", перед открытием менюшки с функциями вываливается вот такая ошибка
1.JPG
пример с http://www.automated...ngutils-object/ работет.
тело скрипта, JScript.
// filename.sj
function Run(app)
{
	try
  {	
		if (app == null)
			return;
		app.Close();
		app.Run();    
  }
  catch(exception)
  {
    Log.Error("Exception", exception.description);
  }
}
//пробовал возвращать просто что-то, а не приложение из TestedApps. все равно вываливается
function GetApp()
{
	try
  {
    var app = TestedApps["testedAppName"];		
		return app;
  }
  catch(exception)
  {
    Log.Error("Exception", exception.description);
  }
}
function RunTestedApp()
{
  try
  {
    var app = GetApp();
		if (app == null)
			return null;
		
		app.Close();			
		app.Run();
		return app;
  }
  catch(exception)
  {
    Log.Error("Exception", exception.description);
  }
}



#78168 Взаимодействие скриптов из разных проектов

Отправлено автор: Qwertylolman 22 сентября 2010 - 06:29 в SmartBear (AutomatedQA) - Functional Testing

script extension - интересно, спасибо.

объемное приложение с кучей графических элементов, .net3.5 и компоненты devcomponents. TC используется для написания регрессионных тестов которые будут запускаться между выкаткой новой версии и передачей её QA.



#78160 Взаимодействие скриптов из разных проектов

Отправлено автор: Qwertylolman 21 сентября 2010 - 15:41 в SmartBear (AutomatedQA) - Functional Testing

Если проекты используют один и тот же скриптовый язык, то так можно сделать:

  • В проекте A делаете Add Existing Item и импортируете скрипт из проекта B.
  • В скрипт проекта A добавляете USEUNIT-ссылку на импортированный скрипт (см. Calling Routines and Variables Declared in Another Unit).
  • Profit!

профита нет, так как с помощью "Add Existing Item" файл все равно переносится в проект А (хотя и по ссылке). а очень не хочется захламлять проект А левыми файлами. но выбора, видимо, нет :/



#78157 Взаимодействие скриптов из разных проектов

Отправлено автор: Qwertylolman 21 сентября 2010 - 14:22 в SmartBear (AutomatedQA) - Functional Testing

отступление: я - девелопер-ООПшник до костей на которого свалили TestComplete, мотивировав тем что QA не умеют программировать и не осилят скрипты. то что я ничего не понимаю в QA начальство не волнует :/

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

проблема:
из проекта для запуска всего хлама будут запускаться скрипты с тестами. тянуть все необходимые файлы нет желания (как их шарить я уже разобрался), так как пропадает весь смысл разбивать съюит на проекты. можно-ли как-то "подключать" скрипты из разных проектов или сами проекты аля .dll?

TC 7.52



#78061 Последовательность настроек ТС (7.20) для доступа к внутренним перемен

Отправлено автор: Qwertylolman 17 сентября 2010 - 12:22 в SmartBear (AutomatedQA) - Functional Testing

спасибо.



#78051 Последовательность настроек ТС (7.20) для доступа к внутренним перемен

Отправлено автор: Qwertylolman 17 сентября 2010 - 10:09 в SmartBear (AutomatedQA) - Functional Testing

добрый день. я столкнулся с такой проблемой:
есть TC версии 7.52 и приложение на c#, .Net 3.5. плагин для OpenApp подключен (версии 5.0), но переменные все-равно отображаются как WindowsForms10.Window.8.app.0.378734a, например. есть старый демо TC версии 4.27 с плагином 4.0 который отлично с этим справляется. дополнительных настроек после установки не делал.
как сделать нормальные имена? сменить версию ТС нельзя(лицензия).