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

Публикации Qwertylolman

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



#79926 JScript и XML

Отправлено автор: Qwertylolman 12 ноября 2010 - 09:29 в Про тестирование обо всём подряд

вопросы к гуру JScript.
1. на сколько применимы статьи по javascript к jscript?
2. в нашем ПО, как и во многих других, есть куча всяких радиобатонов, чекбоксов, текстбоксов и прочих элементов (тысячи их). они все имеют некое стандартное значение прописанное в xml. GUI тестируется из TestComplete 7.52. очень сильно хочется не хардкодить эти значения в скрипт, а брать их из xml которые уже есть. как лучше сделать сравнение значений в контролах с значением из xml?



#80504 Сверка значений в форме с документацией

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

задача: сверить данные по умолчанию в формах с данными из документации.
документация лежит в svn, в виде xml. ТС 7.52, проект на jscript.
как это реализовать? проблема не столько в вытаскивании документации из svn, имхо её проще руками ложить в известное место. проблема в том, что бы сделать это гибко, так как грядет редизайн форм, а их много. и требуют тесты как для текущих вариантов, так и что бы можно было сделать новые.

пока, самая здравая мысль - написать небольшую программку для генерации скриптов. я передаю в неё документ и некий идентификатор формы, на выходе она дает сгенерированный файл с известным именем и скриптом внутри. после этот скрипт запускается из ТС.



#81197 Переменные среды TC

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

TC 7.52.
есть какие-то переменные для обозначения пути к сьюиту или отдельному проекту?



#81201 Переменные среды TC

Отправлено автор: Qwertylolman 03 декабря 2010 - 12:33 в SmartBear (AutomatedQA) - Functional Testing

даже так... спасибо.



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

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

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


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



#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);
}



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

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

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

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



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

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

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

Подозреваю, что проблема в дереве Name Mapping. Попробуйте звать метод RefreshMappingInfo для всех промежуточных родительских объектов проблемного объекта перед доступом к нему. Если поможет, то проблема действительно в этом.

я тоже склоняюсь к этому варианту, но рефреш не помогает :/



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

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

разобрался, спасибо =)



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

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

нет, все-таки не снят. eval() хорошо, но там есть нюанс. надо что-то типа

var файл = подключитьФайл(имяФайла);
файл.ИмяМетода();



#81278 Win32API в Script Extension

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

есть необходимость использовать Win32API в экстеншене (выполняется запуск парсера написанного как консольное приложение). экстеншн не поддерживает объекты win32api. можно как-то обойти это ограничение и запустить парсер из экстеншена?



#81285 Win32API в Script Extension

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

Если я правильно понимаю, вам нужно использовать WshShell.Run:

' VBScript
CreateObject("WScript.Shell").Run "notepad"
Sys.OleObject("WScript.Shell").Run "notepad"
// JScript
(new ActiveXObject("WScript.Shell")).Run("notepad");
Sys.OleObject("WScript.Shell").Run("notepad");


валится с эксепшеном на Run =(
но получилось через Exec



#81292 Win32API в Script Extension

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

Какая версия TC ?
"...эксепшеном на Run.." на каком языке происходит ?
Если на VB, то выполняется ли подобный код на VB в винде ?

JScript, версия 7.52



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

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

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



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

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

вопрос снят, есть метод "eval"



#80814 Testcomlete

Отправлено автор: Qwertylolman 29 ноября 2010 - 09:36 в Автоматизированное тестирование

http://downloads.aut...Complete8ru.zip - никакого профита, описанные в нём действия были раскопаны за первые 10 минут работы с ТС.
http://tctutorial.ru/ к сожалению, не полный =(



#81587 Создание фреймворка для тестов

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

у кого есть опыт создания фреймворков на ТС? приложение объемное и везде повторять код ожидания какого-то окна, его вызов и т.д. довольно трудоемко, по этому решил написать некий "фреймворк" для облегчения работы. но не знаю как его лучше организовать. через ScriptExtension или просто отдельным проектом и потом подключать его к нужным сьюитам? первый вариант менее гибок, использовать скрипты из экстеншена в других скриптах из экстеншена как-то слишком хитро и нравят-ли реализовано =) хотя я еще не проверял. второй вариант не радует тем что фреймворк придется подключать руками.



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

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

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



#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.



#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"

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



#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 который отлично с этим справляется. дополнительных настроек после установки не делал.
как сделать нормальные имена? сменить версию ТС нельзя(лицензия).



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

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

спасибо.



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

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

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

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

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

TC 7.52



#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" файл все равно переносится в проект А (хотя и по ссылке). а очень не хочется захламлять проект А левыми файлами. но выбора, видимо, нет :/