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

Фотография

TestComplete за 1 день


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 112

#61 ArtemRudenko

ArtemRudenko

    Постоянный участник

  • Members
  • PipPipPip
  • 248 сообщений
  • ФИО:Руденко Артем Михайлович
  • Город:Минск


Отправлено 13 декабря 2007 - 14:35

Сколько рускоязычных пользователей ТестКомплита?

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

Какие перспективы этой программы в будущем?

Перспективы хорошие, продукт растет, качество тоже, вместе с тем повышается его сложность(некоторые его аспекты), ну и конечно же цена, от которой не в последнюю очередь зависит количество пользователей как и вообще, так и количество русскоязычных пользователей.
В плане работы с third-party контролами, TC из тех тулов, с которыми мне приходилось сталкиваться, пожалуй самый "сильный".
Если подобный вопрос(о пользователях) вас заинтересовал в связи с перспективами выхода литературы по данному средству или русскоязычного перевода Справки, или, наконец, с перспективами проведения курсов по данному средству на русском языке на територии снг, то тут пока не всё ясно. На данном форуме, вам уже давали ссылку на начало русскоязычной документации, но это дело не быстрое(написание такой документации), а просто перевод Справки AQA не одобрил.
Поэтому ёщё не ясно, что проще, выучить английский(достаточный для того, чтобы понимать существующую Справку и читать вспомогательные материалы) , или же дождаться перевода.
На моё видение, проектов всё больше идёт иностранных, соответственно знание английского языка - одно из первостепенных требований к специалисту, если, конечно, он не желает работать всю жизнь в одной фирме и на одном месте, если он желает добиваться результатов, расти профессионально.
По поводу выгоды - то этот вопрос надо рассматривать в каждом конкретном случае.
Плюсы - тоже.
Одно факт: "не зная броду не лезь в воду"- а именно, не следует приступать к автоматизации, даже пробовать какие-то тулы прежде, чем вы поймете, что это такое и для чего служит, какие выгоды, какие минусы - а они поверьте тоже есть.
Поэтому настоятельно рекомендую почитать литературу(книги,статьи,форум) по соответствующей теме, а уже потом приступать к планированию, иследованию и в конце-концов непосредственно к реализации - и запомните - процесс автоматизации тестирования программного обеспечения куда как ближе к процессу разработки ПО нежели к тестированию оного.
P.S. Подходить к автоматизации надо также скурпулёзно сколь и к разработке самого ПО: вдумчиво, засучив рукова, тщательно изучив все пути.
Успехов вам.
  • 0
И всё-таки она вертится...

#62 Andrey_K

Andrey_K

    Новый участник

  • Members
  • Pip
  • 20 сообщений
  • Город:Харьков

Отправлено 13 декабря 2007 - 14:37

Я это к тому, что благодаря ответам на форуме я за 2 дня понял больше чем неделю читая англ. инструкцию. Думаю я не один такой. Почему бы Вам(всем кто здесь дает советы) не обработать все фунции и по простому написать к ним объяснения. Думаю это издание пользовлось бы популярностью.
  • 0

#63 Genka

Genka

    Профессионал

  • Members
  • PipPipPipPipPipPip
  • 1 328 сообщений
  • ФИО:Геннадий Алпаев
  • Город:Украина, Днепр


Отправлено 13 декабря 2007 - 14:42

Я это к тому, что благодаря ответам на форуме я за 2 дня понял больше чем неделю читая англ. инструкцию. Думаю я не один такой. Почему бы Вам(всем кто здесь дает советы) не обработать все фунции и по простому написать к ним объяснения. Думаю это издание пользовлось бы популярностью.

Была такая попытка: некто АРС хотел сделать перевод всего хелпа на русский. Однако AutomqtedQA не дали разрешения на публикацию этого перевода, потому к нему даже не приступили.

Скоро начнем писать нормальную обучалку, скоро.

А насчет вашего предложения "Почему бы Вам не обработать все фунции и по простому написать к ним объяснения": вы хотя бы представляете объем работ? Это не так просто. Гораздо проще чесать языками на форуме (чем мы и занимаемся, собственно).
  • 0

TestComplete для начинающих (видеозаписи курса)

Software Testing Automation Tips (50 вещей, которые должен знать каждый автоматизатор, книга на английском языке)

Онлайн-учебник "Автоматизация тестирования от «А» до «Ы»"
Сборник рецептов по TestComplete (книга на английском языке)
Онлайн-учебник по TestComplete
Онлайн-учебник по SilkTest


#64 Andrey_K

Andrey_K

    Новый участник

  • Members
  • Pip
  • 20 сообщений
  • Город:Харьков

Отправлено 13 декабря 2007 - 14:54

Одно факт: "не зная броду не лезь в воду"- а именно, не следует приступать к автоматизации, даже пробовать какие-то тулы прежде, чем вы поймете, что это такое и для чего служит, какие выгоды, какие минусы - а они поверьте тоже есть.
Поэтому настоятельно рекомендую почитать литературу(книги,статьи,форум) по соответствующей теме, а уже потом приступать к планированию, иследованию и в конце-концов непосредственно к реализации - и запомните - процесс автоматизации тестирования программного обеспечения куда как ближе к процессу разработки ПО нежели к тестированию оного.
P.S. Подходить к автоматизации надо также скурпулёзно сколь и к разработке самого ПО: вдумчиво, засучив рукова, тщательно изучив все пути.
Успехов вам.


Спасибо
  • 0

#65 Genka

Genka

    Профессионал

  • Members
  • PipPipPipPipPipPip
  • 1 328 сообщений
  • ФИО:Геннадий Алпаев
  • Город:Украина, Днепр


Отправлено 13 декабря 2007 - 14:58

У меня создалось впечатление, что вы не человек, а скрипт. :)
Этакий искуственный интелект, типа этого - http://www.titane.ca.../igod/main.html


Леша, надо поосторожнее подобные ссылки давать в рабочее время :)
У меня уже истерика от этого вашего бота


я, кстати, потестил бота: какой-то он хлипенький. На фразу "be my guest" - зависает.
и в фаерфоксе не работает
Боты нынче уже не те...
  • 0

TestComplete для начинающих (видеозаписи курса)

Software Testing Automation Tips (50 вещей, которые должен знать каждый автоматизатор, книга на английском языке)

Онлайн-учебник "Автоматизация тестирования от «А» до «Ы»"
Сборник рецептов по TestComplete (книга на английском языке)
Онлайн-учебник по TestComplete
Онлайн-учебник по SilkTest


#66 Dmitry N

Dmitry N

    Профессионал

  • Members
  • PipPipPipPipPipPip
  • 1 742 сообщений
  • ФИО:Николаев Дмитрий
  • Город:Где-то в России

Отправлено 13 декабря 2007 - 17:02

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

я, кстати, потестил бота: какой-то он хлипенький. На фразу "be my guest" - зависает.

А у меня завис на вопросе "Do you speak russian?". :)

А на фразу "You are really fool!" ответил просто замечательно:

"I will tell my botmaster you said I am fool."

:)

PS. Сорри за оффтоп. =)
  • 0
С уважением,
Дмитрий

#67 Genka

Genka

    Профессионал

  • Members
  • PipPipPipPipPipPip
  • 1 328 сообщений
  • ФИО:Геннадий Алпаев
  • Город:Украина, Днепр


Отправлено 13 декабря 2007 - 17:13

PS. Сорри за оффтоп. =)


Да тут вся тема - оффтоп. А вы что, ее прочитать всю смогли? :)
  • 0

TestComplete для начинающих (видеозаписи курса)

Software Testing Automation Tips (50 вещей, которые должен знать каждый автоматизатор, книга на английском языке)

Онлайн-учебник "Автоматизация тестирования от «А» до «Ы»"
Сборник рецептов по TestComplete (книга на английском языке)
Онлайн-учебник по TestComplete
Онлайн-учебник по SilkTest


#68 LeshaL

LeshaL

    Профессионал

  • Members
  • PipPipPipPipPipPip
  • 1 094 сообщений
  • ФИО:Алексей Лянгузов
  • Город:Saint-Petersburg


Отправлено 13 декабря 2007 - 17:14

я, кстати, потестил бота: какой-то он хлипенький. На фразу "be my guest" - зависает.
и в фаерфоксе не работает
Боты нынче уже не те...

Ваша правда, в файрфоксе не отвечает. В SeaMonkey работает. Избирательный год.
Коллеги его мучали:

Me:
Does "rm -rf /" work?
God:
I think it does rm rf work.
Me:
Check if it works
God:
Checking...stand by.

God:
What's your favorite movie?
Me:
Porno
God:
I've never seen it. Is that a good movie for children?

А еще, он про XML знает и TCP\IP :)
  • 0
Regards,
Alexey

#69 Genka

Genka

    Профессионал

  • Members
  • PipPipPipPipPipPip
  • 1 328 сообщений
  • ФИО:Геннадий Алпаев
  • Город:Украина, Днепр


Отправлено 13 декабря 2007 - 18:11

а еще он вежливый

God:
Who is the best robot?
Me:
you are
God:
Thanks you are a pretty cool human too


:biggrin:
  • 0

TestComplete для начинающих (видеозаписи курса)

Software Testing Automation Tips (50 вещей, которые должен знать каждый автоматизатор, книга на английском языке)

Онлайн-учебник "Автоматизация тестирования от «А» до «Ы»"
Сборник рецептов по TestComplete (книга на английском языке)
Онлайн-учебник по TestComplete
Онлайн-учебник по SilkTest


#70 serpent

serpent

    Новый участник

  • Members
  • Pip
  • 33 сообщений

Отправлено 13 декабря 2007 - 21:09

Я думаю, что ключевой момент кроется в фразе

Например, у нас есть сравнительно толстый фреймворк, который манипулирует тестируемым продуктом.

Вся проблема в том, что нужен фреймворк. Но есть случаи, когда его нет и на его написание нет времени или он нецелесообразен для текущих задач (могут быть случаи, сходу не назову). Вот в этих случаях надо как-то вертеться, как можно, и многие ранее запрещенные приемы могут вполне стать разрешенными.

Но, если автоматизация планируется заблаговременно, выделяется достаточное время, то не отводить время и усилия на создание фреймворка - это заблаговременное обречение проекта на провал.


Он (фреймворк) не всегда был толстым, и не всегда был вообще. Он результат непрерывного процесса реализации идеи о том, что при написании скриптов нужно не валить все в одну кучу, как это делает рекордер и как делают люди, начинающие писать скрипты по примерам из рекордера. А надо различать как минимум 3 отдельных слоя:
1.1. Получение элементов приложения таких как процесс и окна.
1.2. Элементарные операции над контролами.
2. Элементарные операция над самим приложением (с использованием 1.1 и 1.2).
3. Высокоуровневые операции над приложением (в идеале, с использованием только 2) - собственно тесты.

В п.1.1 имеется в виду, что разделяются сущности типа "процесс приложения", "главное окно приложения", "основной тулбар" от их реализаций вида Sys.Process('myApp'), Sys.Process('myApp').Window('MainForm','',-1), Sys.Process('myApp').Window('MainForm','',-1).Window('ToolBar', '', -1). То есть, имеются функции, которые скрывают подробности получения конкретных объектов. Например, для получения процесса вы вызываете функцию MyAppProcess, для получения главного окна GetMainForm, для получения основного тулбара GetFromMainForm('основной тулбар'), которые знают как устроены кишки приложения (с точки зрения иерархии объектов) и больше никто кроме них об этом не знает, и все изменения касающиеся этих вещей не выходят за пределы этих функций.

В п.1.2 имеется в виду, что разделяются сущности типа "кликнуть на кнопку 'Открыть' на тулбаре", "вызвать пункт 'Выход' во всплывающем меню" от их реализаций вида tbWindow.Window('TButton', 'Открыть', -1).Click, mainForm.PopupMenu.Click('Выход'). Т.е. имеются вызовы типа ClickOnTbButton(tbWindow, 'Открыть'), ClickPopupMenuItem('Выход'), которые знают как найти кнопку на тулбаре по ее имени в зависимости от класса тулбара, как найти пункт всплывающего меню. Которые проведут всевозможные проверки типа "а есть ли кнопка?" "а не задизейблена ли она?", "а есть ли такой пункт меню?", проверят успешность выполнения операции и тщательно задокументируют в лог всю информацию, необходимую для того чтобы потом понять а что же собственно делали. Здесь локализуется вся информация по работе с контролами, и тот кто вызывает эти методы не парится о деталях.

В 2 идет взаимодействие 1.1 и 1.2. Операции типа "запустить/закрыть приложение", "сохранить документ в файл", "изменить настройки на заданные" отделяются от их конкретной реализации. Берутся окна-контролы из 1.1 и проводятся над ними действия с помощью 1.2. Также выполняются всевозможные проверки (на которые забьют при написании скриптов методом "рекордера") и документируется процесс исполнения. Это представляется в виде вызовов вида StartMyCoolApp, CloseMyCoolApp, SetSettingsTo([['property1', value1], ['property2', value2]]). Здесь локализуется информация о технических деталях манипулирования приложением.

Ну в п.3 собственно с помощью п.2 (и комбинации п.1.1 и п.1.2, которые в процессе выделяются в п.2) реализуются уже тесты. Операции типа "запустить приложение, загрузить файл, проверить что содержится определенная строка, вставить что-то из буфера обмена, сохранить на диск, проверить что сохранилось то что ожидалось" реализуются с помощью кирпичиков из п.2. Эта часть составляет основной объем от всего объема кода, требует менее квалифицированного тестировщика (подойдет обычный тестер со знаниями программирования в объеме средней школы). При ее написании ему нет необходимости заморачиваться всякими окошками, тулбарами и т.п. деталями, он концентрируется именно на тестировании. Разработка тестов идет быстро (быстрее чем запись рекордером и последующая правка).

Казалось бы все это сложно и требует кучи времени. Отнюдь. Затраты времени лишь в начале автоматизации больше чем если применять "метод рекордера". Пункты с 1 по 2 изначально могут быть всего лишь обертками вокруг соответствующего функционала, предоставляемого тесткомплитом. А с ходом разработки затраты времени постоянно падают, т.к. накапливается качественный повторно используемый код, т.к. всевозможные изменения приложения затрагивают лишь небольшие части кода и не расползаются по нему бесконтрольно. Создание фреймворка идет вместе с процессом автоматизации (он постепенно сам собой выкристаллизовывается из тупых оберток, главное изначально его иметь в мыслях), и дает выигрыш буквально с самого начала из-за более понятной структуры.
Причем часть фреймворка + используемый подход становится вообще общим, не зависящим от конкретного проекта и используются для тестирования совершенно новых проектов, сразу ставя их на прочный фундамент и ускоряя выход результата.

Я не понимаю, как занимаясь автоматизацией тестирования больше 2-3 месяцев можно использовать рекордер? Это как ползающий младенец, большинство проходят через этот этап и начинают ходить, и печально смотреть на того кому это не удается. Если проще писать скрипты с помощью рекордера, то это повод остановится и хорошенько подумать.
  • 0

#71 Andrey_K

Andrey_K

    Новый участник

  • Members
  • Pip
  • 20 сообщений
  • Город:Харьков

Отправлено 14 декабря 2007 - 07:50

Подскажите что делать с этой частью программы:

procedure Main;
begin
try
// Enter your code here.
except
Log.Error('Exception', ExceptionMessage)
end;
end;

?

Для чего она нужна?

Нужна ли она если только одна процедура?
  • 0

#72 AlexP

AlexP

    Опытный участник

  • Members
  • PipPipPipPip
  • 406 сообщений
  • Город:Санкт-Петербург

Отправлено 14 декабря 2007 - 10:08

Подскажите что делать с этой частью программы:

procedure Main;
begin
try
// Enter your code here.
except
Log.Error('Exception', ExceptionMessage)
end;
end;

Для чего она нужна?


Это стандартный шаблон процедуры (при создании нового unit'а):
try... except - обработчик ошибок. Если в основном блоке (try) произойдёт ошибка, то ты переместишься в блок except.
P.S. Я не зря спросил про выбор языка.... твой вопрос - азы скриптового языка. Если ты действительно когда-либо изучал DelphiScript, то такие вещи просто обязан знать!
  • 0

#73 Genka

Genka

    Профессионал

  • Members
  • PipPipPipPipPipPip
  • 1 328 сообщений
  • ФИО:Геннадий Алпаев
  • Город:Украина, Днепр


Отправлено 14 декабря 2007 - 10:11

Подскажите что делать с этой частью программы:

procedure Main;
.........
Для чего она нужна?

Нужна ли она если только одна процедура?


это такой пример функции, сгенерированный ТестКомплитом. Можете удалить, если мешает.
  • 0

TestComplete для начинающих (видеозаписи курса)

Software Testing Automation Tips (50 вещей, которые должен знать каждый автоматизатор, книга на английском языке)

Онлайн-учебник "Автоматизация тестирования от «А» до «Ы»"
Сборник рецептов по TestComplete (книга на английском языке)
Онлайн-учебник по TestComplete
Онлайн-учебник по SilkTest


#74 Andrey_K

Andrey_K

    Новый участник

  • Members
  • Pip
  • 20 сообщений
  • Город:Харьков

Отправлено 14 декабря 2007 - 13:04

Подскажите что делать с этой частью программы:

procedure Main;
begin
try
// Enter your code here.
except
Log.Error('Exception', ExceptionMessage)
end;
end;

Для чего она нужна?


Это стандартный шаблон процедуры (при создании нового unit'а):
try... except - обработчик ошибок. Если в основном блоке (try) произойдёт ошибка, то ты переместишься в блок except.
P.S. Я не зря спросил про выбор языка.... твой вопрос - азы скриптового языка. Если ты действительно когда-либо изучал DelphiScript, то такие вещи просто обязан знать!



Спасибо. Я уже разобрался. Когда учил, но это было когда-то. Но я понял, в прниципе, понял зачем это нужно.
  • 0

#75 Andrey_K

Andrey_K

    Новый участник

  • Members
  • Pip
  • 20 сообщений
  • Город:Харьков

Отправлено 14 декабря 2007 - 13:05

Подскажите что делать с этой частью программы:

procedure Main;
.........
Для чего она нужна?

Нужна ли она если только одна процедура?


это такой пример функции, сгенерированный ТестКомплитом. Можете удалить, если мешает.



Есть в русском варианте описание использования Try Except?
  • 0

#76 KaNoN

KaNoN

    АЦЦКИЙ СОТОНА

  • Members
  • PipPipPipPipPipPip
  • 1 260 сообщений
  • ФИО:Колесник Николай
  • Город:Днепропетровск > Киев > Лондон

Отправлено 14 декабря 2007 - 13:17

Есть в русском варианте описание использования Try Except?


Выше уже объяснили, что

try... except - обработчик ошибок. Если в основном блоке (try) произойдёт ошибка, то ты переместишься в блок except.

Только в терминологии это не ошибка, а исключение
  • 0

#77 AlexP

AlexP

    Опытный участник

  • Members
  • PipPipPipPip
  • 406 сообщений
  • Город:Санкт-Петербург

Отправлено 14 декабря 2007 - 13:20

Только в терминологии это не ошибка, а исключение


ну да, exception :)
  • 0

#78 Genka

Genka

    Профессионал

  • Members
  • PipPipPipPipPipPip
  • 1 328 сообщений
  • ФИО:Геннадий Алпаев
  • Город:Украина, Днепр


Отправлено 14 декабря 2007 - 13:26

Есть в русском варианте описание использования Try Except?


кажется, уже говорили, что на русском ничего нету. За исключением того, что уже показали
  • 0

TestComplete для начинающих (видеозаписи курса)

Software Testing Automation Tips (50 вещей, которые должен знать каждый автоматизатор, книга на английском языке)

Онлайн-учебник "Автоматизация тестирования от «А» до «Ы»"
Сборник рецептов по TestComplete (книга на английском языке)
Онлайн-учебник по TestComplete
Онлайн-учебник по SilkTest


#79 Andrey_K

Andrey_K

    Новый участник

  • Members
  • Pip
  • 20 сообщений
  • Город:Харьков

Отправлено 14 декабря 2007 - 13:26

Есть в русском варианте описание использования Try Except?


Выше уже объяснили, что

try... except - обработчик ошибок. Если в основном блоке (try) произойдёт ошибка, то ты переместишься в блок except.

Только в терминологии это не ошибка, а исключение


Объяснили что это значит. А как этим пользоваться? Без подробностей.
  • 0

#80 ArtemRudenko

ArtemRudenko

    Постоянный участник

  • Members
  • PipPipPip
  • 248 сообщений
  • ФИО:Руденко Артем Михайлович
  • Город:Минск


Отправлено 14 декабря 2007 - 13:26

Спасибо. Я уже разобрался. Когда учил, но это было когда-то. Но я понял, в прниципе, понял зачем это нужно.

Здравствуйте,
У меня нескромный вопрос, если вы поняли, зачем вам пример?
Я повторюсь. Но если воспользоваться поиском - вы найдете, зачем и как это сделать.
И ёщё, благодаря поиску вы найдете информацию о том, какого рода исключительные ситуации позволит обработать вам эта функциональность.
  • 0
И всё-таки она вертится...


Количество пользователей, читающих эту тему: 1

0 пользователей, 1 гостей, 0 анонимных