On 16 January 2012 21:19, Agis A. <[email protected]> wrote:
> Hola!
>
> I'm new to Rails (it's my 2nd day reading the Agile development with Rails
> book) and I'm kinda confused with the tests.
>
> So let me get this straight: With unit testing, we see if our model is
> working as it should (as our app's specifications demands) and Rails
> provides us with all the unit testing features just to make our lifes
> easier, so we don't have to manually enter values to see if they're accepted
> or not.  Is that right? And we're doing these tests to save ourself from
> future work for fixing bugs in our code etc. With unit testing we can
> pre-emptively fix our code's possible bugs, right from the beggining.
>
> Unit testing seems clear, but Functional testing is a little confusing to
> me: Why are we doing this? Where does it helps us? I know that we're testing
> for example if there are certain elements in our rendered views, for
> example:  assert_select '#columns #side a', minimum: 4 but how could we
> *not* have these elements in our views?

It may seem obvious to you that the views are basically all right
because you can see that they are when you run the s/w.  However,
perhaps there are a few conditions that change the details of what
appears on the page, maybe you view the page as a normal user and as
an admin, or perhaps with a different value of some field in the
database the view changes some detail.  No problem, just try each of
these conditions and check it is ok.  You can easily do this each time
you update the website.

Now add another 50 different pages ( a number of different controllers
and the different views for that controller).  Each of those will have
a number of things you need to check you have not accidentally messed
up when you release a new version of the site.  To manually check that
all the views still operate correctly becomes virtually impossible.

With automated testing you can be reasonably sure that you have not
accidentally messed something up and will allow you to sleep soundly
in your bed at night.

Colin

> Why are these kinds of test useful
> and not just extra-code to write? To me it seems more like a
> security-measure (checking if certain links appear on a page) more than a
> test to see if something is wrong. However, judging from the file names,
> functional testing is about the controller, right?

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en.

Reply via email to