Re: Testing Views - iOS

"Luther Baker [email protected] [testdrivendevelopment]" <[email protected]> Sat, 31 May 2014 02:32:56 -0500
Newsgroups gmane.comp.programming.test-driven-development
Message-ID <CAL5Mv1mzygwBigaPvXhZNFbj0agDit_2tkxB6Q6RM7jDtiXLLA@mail.gmail.com>
Screenscrape? In iOS?


I generally don't position things explicitly via pixels anymore - not with
Autolayout so would be hard to tell exactly where something was to show up
if I were writing the test first.


I can write a UAT test that basically gets to that screen and can expect
certain behavior -- but was looking for help regarding unit tests.


Thanks,
-Luther






On Fri, May 30, 2014 at 10:11 AM, Amir Kolsky [email protected]
[testdrivendevelopment] <[email protected]> wrote:


>
>
>  Can’t you just screen scrape the views, given that they are supposed to
> drive the screen?
>
>
>
> *From:* [email protected] [mailto:
> [email protected]]
> *Sent:* Friday, May 30, 2014 6:23 PM
> *To:* [email protected]
> *Subject:* [TDD] Testing Views - iOS
>
>
>
>
>
> I've essentially broken my GUI logic out into a rough MVP pattern and
> while I find testing the Models and Presenters straightforward, I haven't
> come up with a repeatable process to test drive the code in the Views.
>
>
>
> Granted, my views are dumb and have no real business logic - but for
> instance, if something is disabled, I could test that certain fields are
> set to 'readonly', or greyed out, etc.
>
>
>
> I generally use mocks and inject dependencies everywhere else in the app -
> but that isn't as feasible in the views. Buttons, toggles and segemented
> controls aren't something the parent view can just swap out, replace and
> layout correctly. Injection doesn't feel right and so, because Views are so
> 'self contained' - I find myself newing child components up inside of their
> parent views and as such, I'm not sure how to TDD them without exposing
> their internals somehow.
>
>
>
> Would great appreciate some suggestions.
>
>
>
> Thanks,
>
> -Luther
>
>
>
>    
>