Тестирование веб-приложений - PullRequest
1 голос
/ 22 сентября 2010

Мой вопрос такой общий, но я думаю, что ответ будет конкретным.

Все, что я хочу знать, это:

Есть ли способ или шаги или механизм для профессионального тестирования приложения (веб-приложения)?

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

Как мне преодолеть эту проблему и сэкономить свое время?

Хорошие ссылки:

http://www.masukomi.org/talks/unit_testing_talk_2/index.xul?data=slide_data.txt#page215

http://butunclebob.com/ArticleS.UncleBob.TheBowlingGameKata

https://stackoverflow.com/questions/185021/rhino-mocks-good-tutorials

http://daptivate.com/archive/2008/02/12/top-10-best-practices-for-production-asp-net-applications.aspx

http://dotnetslackers.com/IIS/re-60499_What_is_It_is_an_error_to_use_a_section_registered_as_allowDefinition_MachineToApplication_beyond_application_level.aspx

Ответы [ 7 ]

6 голосов
/ 23 сентября 2010

Как профессиональный тестировщик, я предлагаю вам иметь правильное сочетание автоматического и ручного тестирования.

АВТОМАТИЗИРОВАННОЕ ИСПЫТАНИЕ

  • Модульное тестирование
    Используйте NUnit для проверки ваших классов, функций и взаимодействия между ними.
    http://www.nunit.org/index.php

  • Автоматическое функциональное тестирование
    Если это возможно, вы должны автоматизировать большую часть функционального тестирования. Некоторые каркасные работы имеют встроенное функциональное тестирование. В противном случае вы должны использовать инструмент для этого. Если вы разрабатываете веб-сайты / приложения, возможно, вы захотите взглянуть на Selenium.
    http://www.peterkrantz.com/2005/selenium-for-aspnet/

  • Непрерывная интеграция
    Используйте CI, чтобы убедиться, что все ваши автоматические тесты запускаются каждый раз, когда кто-то из вашей команды делает коммит в проект.
    http://martinfowler.com/articles/continuousIntegration.html

РУЧНОЕ ИСПЫТАНИЕ
Как бы я ни любил автоматизированное тестирование, оно, IMHO, не заменит ручное тестирование. Основная причина в том, что автоматизированный пользователь может делать только то, что ему говорят, и проверять только то, что ему сообщили, для того, чтобы он воспринимался как пройденный / неудачный. Человек может использовать свой интеллект, чтобы находить ошибки и задавать вопросы, возникающие при тестировании чего-то другого.

  • Поисковые испытания
    ET - это очень дешевый и эффективный способ поиска дефектов в проекте. Он использует интеллект человека и учит тестеров / разработчиков больше о проекте, чем любой другой метод тестирования, который я знаю. Проведение сеанса ET для каждой функции, развернутой в тестовой среде, - это не только эффективный способ быстрого поиска проблем, но и хороший способ учиться и получать удовольствие!
    http://www.satisfice.com/articles/et-article.pdf
3 голосов
/ 22 сентября 2010

Visual Studio имеет отличное тестовое программное обеспечение

http://msdn.microsoft.com/en-us/library/ms182409.aspx

http://channel9.msdn.com/Blogs/briankel/Visual-Studio-Test-Professional-2010-The-Tool-for-the-Modern-Tester

2 голосов
/ 22 сентября 2010

Selenium - отличный набор инструментов для тестирования веб-приложений. Я бы посоветовал взглянуть на это.

1 голос
/ 23 сентября 2010

В профессиональное тестирование любого приложения уходит гораздо больше, чем несколько хороших инструментов.

Но если придерживаться инструментов на данный момент, то хорошими инструментами для тестирования сайтов .Net являются WatiN . И хорошим примером использования WatiN в реальной ситуации является проект DotNetNuke Automation Tests . Это постоянно растущий набор автоматизированных тестов, которые DotNetNuke Corp. использует для ежедневного тестирования DotNetNuke, и, что лучше всего, с открытым исходным кодом.

1 голос
/ 22 сентября 2010

Используйте либо MS Test Framework, либо NUnit.

Я рекомендую прочитать о модульных тестах и ​​целевых интеграционных тестах.

Для полных системных тестов используйте WatiN.

1 голос
/ 22 сентября 2010

Я использую http://xunit.codeplex.com в сочетании с http://www.jetbrains.com/resharper/.

1 голос
/ 22 сентября 2010

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

Этот вопрос SO должен быть полезен при выборе книги дляначать с.

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