FAQ
Moving to Python from Ruby, first time poster.

Anyone any opinions (non-religious) on investing time in Lettuce (www.lettuce.it) or Freshen (https://github.com/rlisagor/freshen#readme) for their BDD ?

And for CI having been using Hudson for a while, any real advantages in a Python / Django world for adopting something native like Trac and one of the CI plugins like Bitten?

Cheers!

Mark

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-list/attachments/20110708/ecd9b736/attachment.html>

Search Discussions

  • Stefan Behnel at Jul 9, 2011 at 4:36 am

    mark curphey, 09.07.2011 01:41:
    And for CI having been using Hudson for a while, any real advantages in a Python / Django world for adopting something native like Trac and one of the CI plugins like Bitten?
    I warmly recommend Jenkins (i.e. Hudson) for anything CI. It gives you tons
    of plugins and configuration options together with full information
    awareness about your build status and dependencies through a nice web
    interface.

    The only reason to go native here is that it may become simpler to set up
    Python build and test jobs. But given that it's usually just a couple of
    shell commands that you write once, you'd miss more from the interface than
    what you gain from a quicker job setup.

    Stefan
  • Phlip at Jul 10, 2011 at 2:05 am

    On Jul 8, 9:36?pm, Stefan Behnel wrote:
    mark curphey, 09.07.2011 01:41:
    And for CI having been using Hudson for a while, any real advantages in a Python / Django world for adopting something native like Trac and one of the CI plugins like Bitten?
    I'm kind'a partial to Morelia for BDD.

    Don't be fooled by Ruby's RSpec - it's _not_ "BDD". In my exalted
    opinion. "BDD" means "your customer gives you requirements as
    sentences, and you make them into executable statements." That's what
    Cucumber does, which Morelia learns from.

    And BDD and CI are orthogonal. BDD should be part of a complete TDD
    test suite, and your CI tool should run that.

    I still like CruiseControl.rb - even though it has bugs when it sees
    too many git integrations. Hudson had way too many features, and CCrb
    mildly presumes you know how to operate its .cruise/projects folder
    manually!
  • Mark curphey at Jul 10, 2011 at 2:39 am
    Thanks. FWIW I played with a bunch (Freshen, Morelia, Lettuce....) over the last few days and Lettuce appears to be the most "actively" maintained and closest to a cucumber-like implementation IMHO. I have decided to adopt it for now. I played with a few CI servers but Jenkins (Hudson) is tough to beat IMHO but I am sure this is just my personal preference. Anyways thanks for the help. Cheers, Mark

    On Jul 9, 2011, at 7:05 PM, Phlip wrote:
    On Jul 8, 9:36 pm, Stefan Behnel wrote:
    mark curphey, 09.07.2011 01:41:
    And for CI having been using Hudson for a while, any real advantages in a Python / Django world for adopting something native like Trac and one of the CI plugins like Bitten?
    I'm kind'a partial to Morelia for BDD.

    Don't be fooled by Ruby's RSpec - it's _not_ "BDD". In my exalted
    opinion. "BDD" means "your customer gives you requirements as
    sentences, and you make them into executable statements." That's what
    Cucumber does, which Morelia learns from.

    And BDD and CI are orthogonal. BDD should be part of a complete TDD
    test suite, and your CI tool should run that.

    I still like CruiseControl.rb - even though it has bugs when it sees
    too many git integrations. Hudson had way too many features, and CCrb
    mildly presumes you know how to operate its .cruise/projects folder
    manually!
    --
    http://mail.python.org/mailman/listinfo/python-list
  • Phlip at Jul 10, 2011 at 3:03 am

    On Jul 9, 7:39?pm, mark curphey wrote:

    Thanks. FWIW I played with a bunch (Freshen, Morelia, Lettuce....)
    Morelia is "undermaintained" because it's finished. It attaches to any
    pre-existing TestCase-style test runner, hence there's nothing to
    maintain!

    Packages like Lettuce rebuild the entire TestCase back-end just to
    change the front end. That forces its maintainer to then do the Red
    Queen thing, and constantly compete with all other test runners just
    to stay in place. Props for the effort, though..!
  • Ben Finney at Jul 10, 2011 at 3:38 am

    Phlip <phlip2005 at gmail.com> writes:
    On Jul 9, 7:39?pm, mark curphey wrote:

    Thanks. FWIW I played with a bunch (Freshen, Morelia, Lettuce....)
    Morelia is "undermaintained" because it's finished. It attaches to any
    pre-existing TestCase-style test runner, hence there's nothing to
    maintain!
    It looks good! But it's not yet in Debian :-(

    I've filed bug report #633411 <URL:http://bugs.debian.org/633411> to
    call for an interested Python programmer to package it for Debian.

    --
    \ ?That's the essence of science: Ask an impertinent question, |
    `\ and you're on the way to the pertinent answer.? ?Jacob |
    _o__) Boronowski, _The Ascent of Man_, 1976 |
    Ben Finney
  • Phlip at Jul 10, 2011 at 5:10 am

    On Jul 9, 8:38?pm, Ben Finney wrote:
    Phlip <phlip2... at gmail.com> writes:
    On Jul 9, 7:39?pm, mark curphey wrote:

    Thanks. FWIW I played with a bunch (Freshen, Morelia, Lettuce....)
    Morelia is "undermaintained" because it's finished. It attaches to any
    pre-existing TestCase-style test runner, hence there's nothing to
    maintain!
    It looks good! But it's not yet in Debian :-(
    Tx - I never added anything to a distro before! But..!

    'sudo pip install morelia' just worked for me, on Ubuntu. I don't
    think a python-morelia aptitude package would add any value. Such test
    rigs shall never have any embedded C code or other shenanigans.

    If I needed to think of a feature to add, it would be P<name> notation
    in the regular expressions, to then enforce the names of the matching
    arguments. But this is fluff; real programmers can do without it. If I
    worked closer to the center of the BDD thought leadership I'd know
    what else to add...
  • Ben Finney at Jul 10, 2011 at 5:21 am

    Phlip <phlip2005 at gmail.com> writes:

    'sudo pip install morelia' just worked for me, on Ubuntu.
    The problem with ?pip? is that it's a parallel package installation that
    ignores the available package management system on the OS.

    That's not a fault of ?pip? or Setuptools or PyPI or the rest; but it's
    a higher maintenance burden for the user than getting a package from the
    same system that provides all the rest of their packages on the
    computer.

    On operating systems with poor package management, Python's distutils
    and PyPI etc. are better than nothing. But on an OS like Debian with
    good package management already for free software, it's a step backward
    to rely on external dependencies from a disjoint package system.
    I don't think a python-morelia aptitude package would add any value.
    I think it would add great value, since without it I'm unlikely to
    bother using Morelia in any project. The maintenance burden is too high
    to keep adding dependencies that come from a distinct dependency system
    outside my OS.

    --
    \ ?Consider the daffodil. And while you're doing that, I'll be |
    `\ over here, looking through your stuff.? ?Jack Handey |
    _o__) |
    Ben Finney
  • Phlip at Jul 10, 2011 at 3:00 pm

    I think it would add great value, since without it I'm unlikely to
    bother using Morelia in any project. The maintenance burden is too high
    to keep adding dependencies that come from a distinct dependency system
    outside my OS.
    pip freeze! Specifically, we already added pip freeze and virtualenv
    support to our project's fab file...
    There's no "pip uninstall", though.
    I can see that would matter to projects you would want to uninstall,
    but not Morelia...
  • Phlip at Jul 10, 2011 at 3:29 pm
    Two of my feature requests for Morelia:

    - integrate with the test runner (nose etc.) to provide one
    dot . per passing step

    - insert a long multi-line abstract string (typically
    XML) with inside [[CDATA-style escaping tags

    - the ability to stub a step as <not passing yet>

    - the ability to pass a | delimited | table into a step
    as an argument containing an array, instead of unrolling
    the table into multiple calls to one step

    - a rapid conversion to an HTML report, with folding blocks,
    as an instant project documentation.

    Lack of the second option is why we _didn't_ use M for the BDD test
    runner on our latest project. (The onsite customer is an XML-freak,
    AND the lead architect until I can manage to retire him upstairs!;)

    But if I could put those four in, then write a disposable script that
    converted our XML "project definition" file back into Morelia-Cucumber-
    Gherkin notation, I'd have Morelia back in our project!
  • Rusi at Jul 10, 2011 at 5:45 pm

    On Jul 10, 10:21?am, Ben Finney wrote:
    Phlip <phlip2... at gmail.com> writes:
    'sudo pip install morelia' just worked for me, on Ubuntu.
    The problem with ?pip? is that it's a parallel package installation that
    ignores the available package management system on the OS.

    That's not a fault of ?pip? or Setuptools or PyPI or the rest; but it's
    a higher maintenance burden for the user than getting a package from the
    same system that provides all the rest of their packages on the
    computer.

    On operating systems with poor package management, Python's distutils
    and PyPI etc. are better than nothing. But on an OS like Debian with
    good package management already for free software, it's a step backward
    to rely on external dependencies from a disjoint package system.
    Just curious: Do you manage to stay within debian packages and have
    all the python packages you want/need at the versions that are most
    convenient?

    For myself, until recently my debian testing did not even give
    python2.7.
  • Ben Finney at Jul 10, 2011 at 9:57 pm

    rusi <rustompmody at gmail.com> writes:

    Just curious: Do you manage to stay within debian packages and have
    all the python packages you want/need at the versions that are most
    convenient?
    When that's not the case, I consider it not a status quo to live with,
    but a problem to be addressed.

    --
    \ ?I cannot conceive that anybody will require multiplications at |
    `\ the rate of 40,000 or even 4,000 per hour ?? ?F. H. Wales, 1936 |
    _o__) |
    Ben Finney
  • Stefan Behnel at Jul 10, 2011 at 6:52 am

    Phlip, 10.07.2011 07:10:
    On Jul 9, 8:38 pm, Ben Finneywrote:
    Phlip<phlip2... at gmail.com> writes:
    On Jul 9, 7:39 pm, mark curpheywrote:
    Thanks. FWIW I played with a bunch (Freshen, Morelia, Lettuce....)
    Morelia is "undermaintained" because it's finished. It attaches to any
    pre-existing TestCase-style test runner, hence there's nothing to
    maintain!
    It looks good! But it's not yet in Debian :-(
    Tx - I never added anything to a distro before! But..!

    'sudo pip install morelia' just worked for me, on Ubuntu. I don't
    think a python-morelia aptitude package would add any value.
    There's no "pip uninstall", though.

    Stefan
  • Phlip at Jul 10, 2011 at 5:11 am

    --
    ?\ ? ? ? ??That's the essence of science: Ask an impertinent question, |
    ? `\ ? ? ? ? ? ?and you're on the way to the pertinent answer.? ?Jacob |
    _o__) ? ? ? ? ? ? ? ? ? ? ? ? ? ?Boronowski, _The Ascent of Man_, 1976 |
    Ben Finney
    That nose keeps reminding me of the start of one of the Pirates of the
    Caribbean movies...

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
grouppython-list @
categoriespython
postedJul 8, '11 at 11:41p
activeJul 10, '11 at 9:57p
posts14
users5
websitepython.org

People

Translate

site design / logo © 2023 Grokbase