Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Testing web applications

My question so general, but I think the answer will be specific.

All I want to know is:

Is there a way or steps or mechanism to test the application (web application) in a professional way?

Many times when I finish developing and try my application, testing it with dummy data several times, and when I think every thing is okay and I think I have covered all possible scenarios, I find I forgot important issues, or others tell me they found problems in my application.

How do I overcome this problem, and save my time?

Good links:

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

like image 448
Anyname Donotcare Avatar asked Dec 14 '25 18:12

Anyname Donotcare


2 Answers

As a proffesional tester my suggestion is that you should have a healthy mix of automated and manual testing.

AUTOMATED TESTING

  • Unit Testing
    Use NUnit to test your classes, functions and interaction between them.
    http://www.nunit.org/index.php

  • Automated Functional Testing
    If it's possible you should automate a lot of the functional testing. Some frame works have functional testing built into them. Otherwise you have to use a tool for it. If you are developing web sites/applications you might want to look at Selenium.
    http://www.peterkrantz.com/2005/selenium-for-aspnet/

  • Continuous Integration
    Use CI to make sure all your automated tests run every time someone in your team makes a commit to the project.
    http://martinfowler.com/articles/continuousIntegration.html

MANUAL TESTING
As much as I love automated testing it is, IMHO, not a substitute for manual testing. The main reason being that an automated can only do what it is told and only verify what it has been informed to view as pass/fail. A human can use it's intelligence to find faults and raise questions that appear while testing something else.

  • Exploratory Testing
    ET is a very low cost and effective way to find defects in a project. It take advantage of the intelligence of a human being and a teaches the testers/developers more about the project than any other testing technique i know of. Doing an ET session aimed at every feature deployed in the test environment is not only an effective way to find problems fast, but also a good way to learn and fun!
    http://www.satisfice.com/articles/et-article.pdf
like image 189
Jonas Söderström Avatar answered Dec 17 '25 10:12

Jonas Söderström


Visual studio have a great test software

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

like image 43
Aristos Avatar answered Dec 17 '25 09:12

Aristos



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!