[KyOSS Discuss] Wednesday: Test-Driven Development (TDD)

John Hicks johnhicks at kyoss.org
Tue Oct 8 21:59:31 EDT 2013


Sounds great! Thanks, Charles and Alan!

See everyone tomorrow night!

(That's Wednesday, Oct 9, at LVL1, 814 E. Broadway, rear entrance.)

Social hour and introductions at 6:30. Program at 7:00.

-John

On 10/08/2013 08:40 PM, alan blount wrote:
> Yup - assuming I can make it (I'll try really hard to do so), I'll be 
> demoing:
>
>   * CakePHP testing framework (wrapper/framework for phpunit as of
>     cake2.0)
>   * Introduction to unit testing in CakePHP
>   * Quick Introduction to TDD (writing your tests first)
>   * Overview of TravisCI and demonstration and review of our config file
>   * Code Coverage
>   * Plugin testing
>   * Test grouping
>
> Future topics:
>
>   * General: Object Mocking
>   * Cake specific: Model / Controller / View / Helper mocking
>   * Smoketest / Use Case Testing (in a headless browser, with JS, with
>     screenshots)
>   * MeteorJS Unit Testing
>
>
>
>
> Thanks,
> -alan
>
>
> On Tue, Oct 8, 2013 at 5:17 PM, Charles Griffin <cegrif01 at gmail.com 
> <javascript:_e({}, 'cvml', 'cegrif01 at gmail.com');>> wrote:
>
>     I'm debating on whether to show the group testing in Laravel or
>     just plain ol' php from scratch.  Alan, if you're going to whip
>     out CakePHP, I'd be super excited to show testing in Laravel so
>     that everyone (including myself) can see the differences.  I'm
>     currently working on a financial application in Laravel that is
>     full of unit tests so I naturally would rather show Laravel, but
>     the testing process is exactly the same whether you start with or
>     without a framework.
>
>     I can also hit a little on the subject of mocking and dependency
>     injection, but I will probably just talk about the concepts and
>     what they mean and save those topics for a series of testing
>     discussions.
>
>     The one thing I would like for the group to get out of the TDD
>     discussions is that it really doesn't matter if it's php, java, or
>     even something a little less common like lua.  Testing is
>     testing.  If you're a developer in a different language, don't get
>     discouraged by the fact that there may not be a good testing
>     framework (like phpunit).  It's actually quite easy to spin your
>     own basic methods for testing.
>
>     Charles
>
>
>     On Tue, Oct 8, 2013 at 4:55 PM, John Hicks
>     <johnhicks at gulfbridge.net <javascript:_e({}, 'cvml',
>     'johnhicks at gulfbridge.net');>> wrote:
>
>         Sounds like there's interest and willing presenters, so let's
>         talk about TDD!
>
>         That's tomorrow night (Wednesday, October 9) at 6:30 at LVL1,
>         814 East Broadway, rear entrance, park in the lot to the rear
>         of the rear entrance.
>
>         To put yourself in the mood, your homework is to do at least
>         the first problem at "You can't program Javascript under
>         pressure
>         <http://toys.usvsth3m.com/javascript-under-pressure/>" and to
>         notice how it verifies the correctness, or lack thereof, of
>         your answer, running through a series of tests.
>
>         (I know both Charles and Alan are PHP developers like I am.
>         I'm curious to see how TDD is done in PHP, where there are
>         often side effects to functions beyond what's returned from
>         the function call.)
>
>         We'll have time to talk about other things too. Any other
>         subjects you all want to talk about?
>
>         John
>
>
>         On 10/08/2013 12:42 PM, Alex Bezuska wrote:
>>         I would love to learn more about TDD, I am a newb in this
>>         area.  looking forward to KYOSS tomorrow
>>
>>
>>         On Tue, Oct 8, 2013 at 12:12 PM, Chris Rockwell
>>         <chris at chrisrockwell.com <javascript:_e({}, 'cvml',
>>         'chris at chrisrockwell.com');>> wrote:
>>
>>             I'm definitely interested in a series on this, whether
>>             it's at JSLou or KYOSS.  Can't make KYOSS this month
>>             though, so just cover the basics :)
>>
>>
>>             On Tue, Oct 8, 2013 at 11:58 AM, alan blount
>>             <alan at zeroasterisk.com <javascript:_e({}, 'cvml',
>>             'alan at zeroasterisk.com');>> wrote:
>>
>>                 If anyone's interested in a series on TDD, I can demo
>>                 how we're testing at work with CakePHP, TravisCI,
>>                 smoketest, etc...
>>
>>                 Also, I have not yet cracked into unit testing / TDD
>>                 with MeteorJS, but a lot of work has been done in
>>                 those areas and I've been meaning to get into it.
>>                  Happy to dig into an investigation sometime (JSLou?).
>>
>>                 {I've been putting it off waiting on "official"
>>                 specifications from Meteor, but they do have
>>                 "semi-official" tinytest for packages, which we could
>>                 implement on a simple package I've released which
>>                 needs some tests}
>>
>>
>>                 *Background*
>>
>>                 if anyone does NOT know what we are talking about
>>                 with "unit tests" or "test driven development" - it's
>>                 basically an approach for writing code to test your
>>                 code... More work up front, and usually 2x-3x the
>>                 total lines of code; but you end up with something
>>                 that is a LOT more reliable, readable, referenceable,
>>                 and provable.
>>
>>                 If you're just popping out a Wordpress install, don't
>>                 worry about this.
>>
>>                 If you're building anything you care about, you
>>                 should worry about this... even if it's not a big
>>                 project you want to maintain forever, the habits of
>>                 TDD *will* make you a better programmer and your code
>>                 will forever be easier to
>>                 upgrade/update/refactor/collaborate on.
>>
>>
>>
>>
>>
>>                 Thanks,
>>                 -alan
>>
>>
>>                 On Tue, Oct 8, 2013 at 11:03 AM, Chris Simmons
>>                 <chrissimmons2 at gmail.com <javascript:_e({}, 'cvml',
>>                 'chrissimmons2 at gmail.com');>> wrote:
>>
>>                     Wow John! Thanks for the detailed response!  We
>>                     should be there tomorrow barring any unexpected
>>                     road blocks on my part.
>>
>>                     Thank you,
>>
>>                     Chris Simmons
>>
>>                     On Oct 8, 2013, at 12:32 AM, John Hicks
>>                     <johnhicks at kyoss.org <javascript:_e({}, 'cvml',
>>                     'johnhicks at kyoss.org');>> wrote:
>>
>>>                     On 10/07/2013 10:46 AM, Christopher Simmons wrote:
>>>>                     I haven't been to one of these meetings in over
>>>>                     a year.  I was thinking about coming to this
>>>>                     month's meeting and bringing someone who is
>>>>                     just starting to get interested in technology.
>>>>                      What do we have on the agenda for this month?
>>>>                      Are there any entry level topics being covered
>>>>                     this week?  Anything that a new linux / Open
>>>>                     Source user might be able to follow and not get
>>>>                     too overwhelmed? Thanks in advance!  I'm
>>>>                     looking forward to Wednesday.
>>>
>>>                     Chris,
>>>                     We've tossed a couple of ideas around, but so
>>>                     far nothing solid is on the agenda.
>>>
>>>                     Ideas discussed:
>>>
>>>                       * Joel Tosi (in Chicago) mentioned
>>>                         "presentations / workshops around puppet,
>>>                         vagrant, etc.,"  and "the continuous
>>>                         delivery space or devops" He could come down
>>>                         in the future to lead something, but not
>>>                         this week.
>>>                       * Chris Rockwell and Paul Yost (from IvyTech)
>>>                         have been in communication about creating a
>>>                         LiveCD that supports USB wireless. Chris
>>>                         invited Paul to the meeting to discuss it
>>>                         further.
>>>
>>>                     Another idea:
>>>
>>>                       * Alex Bezuska, who is leading the JSLOU
>>>                         Javascript group, has offered to take on a
>>>                         remake of the front end of the kyoss.org
>>>                         <http://kyoss.org> website as a JSLOU project.
>>>                       * Craig Garner has pointed out a number of
>>>                         deficiencies in the back end of the site.
>>>                       * John Hicks, the perpetrator of the site, has
>>>                         been completely anal-retentive about keeping
>>>                         it programmed-from-scratch (despite the fact
>>>                         that some of the code is approaching 10
>>>                         years old and he hasn't done diddly-squat
>>>                         lately to improve it).
>>>                       * Therefore, we might reasonably ask John to
>>>                         explain the architecture of the site a bit
>>>                         so that we might help him along with
>>>                         back-end improvements.
>>>
>>>                     Other topical topics:
>>>
>>>                       * NSA/privacy/transparency developments
>>>                       * Cryptography - anybody else signed up for
>>>                         the Stanford course?  (It's week five. I
>>>                         really need to get started on it!!!)
>>>                       * The apparent movement to Linux for gaming
>>>                       * New Linux kernel
>>>                       * hardware developments... seem to be multiple
>>>                         takes out recently for a PC+Arduino board
>>>                       * ... what did I miss?
>>>
>>>                     Also,
>>>
>>>                       * We could have a live "You can't program
>>>                         Javascript under pressure
>>>                         <http://toys.usvsth3m.com/javascript-under-pressure/>"
>>>                         competition. Or at least a demonstration of
>>>                         how the site implements test-driven
>>>                         development (TDD).
>>>                       * TDD is a subject that's been suggested, but
>>>                         it's probably too late to expect anyone to
>>>                         prepare something by Wednesday.
>>>                       * I struggled with Mailman and Postfix this
>>>                         past week getting the JSLOU mailing list
>>>                         going. I could show what I was struggling
>>>                         with, and some of you gurus could elucidate
>>>                         on what was probably happening under my
>>>                         clueless nose.
>>>                       * We always have an interest in git, vim, etc.
>>>                       * Barton could give us some more command line
>>>                         gems. Or we could follow his suggestion for
>>>                         each of us to bring our favorite
>>>                         little-used-but-invaluable-when-needed
>>>                         commands to share.
>>>                       * We are overdue talking about networks and
>>>                         network tools.
>>>                       * We could compare our various work
>>>                         environments for coding. IDEs/editors/screen
>>>                         setups, etc. Our work habits, ways to get
>>>                         "in the zone." ...
>>>
>>>                     Any other ideas, folks?
>>>
>>>                     John
>>>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://kyoss.org/pipermail/kyoss-discuss/attachments/20131008/ff21f29f/attachment-0001.html>


More information about the KyOSS-Discuss mailing list