Авторизация

Логин: Пароль:
Регистрация Забыли свой пароль?

Тестирование ПО

Страницы: 1 2 След.
Тестирование ПО, Методики тестирования
Тестирование программы это один из этапов разработки от которого зависит качество программы(стабильная работа, отказа устойчивость).

Какие технологии тестирования можно применить для клиент-серверного ПО, и тестирования GUI?
Думаю поможет модульное тестирование, в совокупности с тестированием нагрузки (моделирование большого количество клиентов/запросов на сервер)

Модульное тестирование или юнит-тестирование (англ. unit testing) — процесс в программировании, позволяющий проверить на корректность отдельные модули исходного кода программы.

Идея состоит в том, чтобы писать тесты для каждой нетривиальной функции или метода. Это позволяет достаточно быстро проверить, не привело ли очередное изменение кода к регрессии, то есть к появлению ошибок в уже написанных и оттестированных местах программы, а также облегчает обнаружение и устранение таких ошибок.
Изменено: max katonin - 31.05.2010 20:07:16
Еще можно сделать карту функционального тестирования.
Исходя из ТЗ составить комплекс тестов и проводить их на завершении каждого этапа разработки
Цитата
max katonin пишет:
Идея состоит в том, чтобы писать тесты для каждой нетривиальной функции или метода. Это позволяет достаточно быстро проверить, не привело ли очередное изменение кода к регрессии, то есть к появлению ошибок в уже написанных и оттестированных местах программы, а также облегчает обнаружение и устранение таких ошибок.

А как вы себе представляете тестирование например Класса потомка TForm. с кнопками спискам и тд.. ведь правельность работы можно увидеть только визуально.

Собствеено интересует автоматизация тестирование пользовательского интерфейса.

Цитата
max katonin пишет:
Еще можно сделать карту функционального тестирования.

Какое есть для этого ПО?
Цитата
Frees пишет:
А как вы себе представляете тестирование например Класса потомка TForm. с кнопками спискам и тд.. ведь правельность работы можно увидеть только визуально.

А что именно вас смущает в тестировании такого рода объектов. Кроме внешнего вида в данном примере надо проверять актуальность содержимого объекта.

Допустим ваша часть проекта состоит в разработке модального окна.
В самом простом случае проверять надо будет следущее
1. визуальное отображение всех объектов формы на своем месте
2. визуальное отображение при изменении размеров окна
3. возвращаемое, модальный результат
4. и тд.

Думаю что универсального ПО для тестирования нет. Каждый проект требует своих подходов
А есть ли тут тестеры или те у кого есть опыт в тестировании? насколько это сложно и что лучше почитать новичку?
пока ты не доволен жизнью - она проходит...
Цитата
a9d пишет:
А есть ли тут тестеры или те у кого есть опыт в тестировании? насколько это сложно и что лучше почитать новичку?


Так начинайте с самых основ, вот например в википедии http://ru.wikipedia.org/wiki/QA
там перечислено множество методологий тестирования по.
Насколько сложно.... сложно сказать, что бы тестировать надо понимать общее устройство системы, механизмы распределения памяти, особенности конкретной ОС, файловые системы и тд. В общем что бы что то тестировать, надо знать как в идеале это должно работать и понимать как это должно работать.
Цитата
max katonin пишет:

Так начинайте с самых основ, вот например в википедии http://ru.wikipedia.org/wiki/QA
там перечислено множество методологий тестирования по.
Насколько сложно.... сложно сказать, что бы тестировать надо понимать общее устройство системы, механизмы распределения памяти, особенности конкретной ОС, файловые системы и тд. В общем что бы что то тестировать, надо знать как в идеале это должно работать и понимать как это должно работать.


Это больше справка о профессии, а вот конкретная литература, как кто начинал?
пока ты не доволен жизнью - она проходит...
Я думаю, что начинающим тестерам просто дают какое-то сравнительно легкое задание и говорят, что делать. Обучение происходит во время работы. Но и знания, конечно, тоже нужны
Accende lumen sensibus, infude ainorem corbidus!
Если кто-то раздумывает, какой бы тест написать, можно попробовать сделать для всех переменных случайное изменение в каком-то диапазоне и записывать результаты. Так есть шанс отыскать комбинацию параметров, при которых возникает ошибка
Accende lumen sensibus, infude ainorem corbidus!
Я обычно подбираю значения, которые может ввести пользователь, надо быть готовым ко всему.
Иногда бывают вообще мало ожидаемые ошибки типа "Access violation at...". Тут надо не только разбираться, что это такое, но и как исправить. При некоторой достаточно большой сложности программы такие ошибки могут превратиться в сущий кошмар.
Accende lumen sensibus, infude ainorem corbidus!
Надо на каждом этапе разработки, тестировать программу. Тогда можно избежать кошмара.
А какие типы программ считаются наиболее сложными для тестирования? Я подумал, наверно, можно причислить к ним системы с большими базами данных, работающими под большой нагрузкой, когда много пользователей. Перед запуском системы не всегда можно проверить работу при 100000 пользователях. А при этом начинаются самые большие трудности
Accende lumen sensibus, infude ainorem corbidus!
Это уже зависит от сервера и системы в большем, программа будет выполнять свое, если будут ресурсы. А серверы уже подбирают под пользователей.
Просто не всегда можно проэмулировать одновременную работу с базой большого кол-ва пользователей. Что будет, если все начнут записывать в таблицу данные. Может увеличиться время отклика, теоретически и ошибки могут быть
Accende lumen sensibus, infude ainorem corbidus!
Часто видно такое "ищется программист с опытом написания под большие нагрузки" Они уже знают и имеют опыт работы с нагрузкой.
И почему-то эта фраза обычно довольно бесит. Также складывается впечатление, что работодатель ничего не знает, но у него высокие требования, и якобы он с первых минут поймет, кто перед ним smile:)
Accende lumen sensibus, infude ainorem corbidus!
Если он ищет для больших нагрузок, то потом же проверит все на своем проекте.
Это конечно хорошо, если есть ТЗ и программисты под боком....
Но что делать когда ни ТЗ нет ни прогрраммистов, у которых можно расспросить за чашкой "чаю" о функционале?

Ведь вручную особо не на проверяешься smile:)
Есть ли смысл ставить Delphi и *Unit тестирование осваивать? или все же есть более гумманные методы тестирования приложений? написаных на делфи?
Изменено: Ron Barhash - 30.09.2010 17:54:04
Зависит от того, что Вы хотите получить в результате тестирования и что у Вас есть. Если Вам нужно проверить работу в разных операционных системах и ничего кроме исполняемого файла нет, тогда Delphi использовать не зачем, а если есть исходные коды и Вы хотите проверить быстродействие, тогда конечно имеет смысл поставить.
Так же как проверяют скрипты и дизайн в разных браузерах, то тут при разных ОС и разных версиях ОС.
Цитата
Артём Кулинич пишет:
Зависит от того, что Вы хотите получить в результате тестирования и что у Вас есть. Если Вам нужно проверить работу в разных операционных системах и ничего кроме исполняемого файла нет, тогда Delphi использовать не зачем, а если есть исходные коды и Вы хотите проверить быстродействие, тогда конечно имеет смысл поставить.


Результат, который я хочу получить:
Частичная\полная автоматизация процесса тестирования

В моем распоряжении обычно только сама программа. (Тестировать ее нужно только в одной ОС, но это пока smile:) )
Есть конечно возможность добраться до исходников... но эта идея мне не оч. по душе, потому что хочу внедрить инструмент в нашей команде.
И давать доступ к исходникам другим людям - это не хорошо:).

Пробовал разного рода бесплатные инструменты на питоне и перле, но с компонентами девэкспреса я не смог подружиться smile:)

Буду рад услышать конструктивные предложения.
Так всё-таки юнит-тестирование предполагает отладку кода с помощью специальной программы или это просто план для тестера, какие действия ему сделать в программе и что проверить?
Наверно план. Какая программа должна быть, чтобы тестировать код разных разработчиков.
Страницы: 1 2 След.
Читают тему (гостей: 1, пользователей: 0, из них скрытых: 0)