Sandbox

Nose

- написать, что статья описывает в основном теле тест-класс, поскольку это всё-таки наиболее частая практика (даже с учётом свободы) и потому что кроме всего прочего основана ещё и на совместимости с unittest; про тесты-функции написать в описании nosetests (может, с примером) — здесь можно рассказать про тесты на ожидаемое взаимодействие нескольких классов.

- также написать про опциональность теста конструктора, поскольку он может со временем изменяться, а вот доступ к атрибутам и их действие должны работать так всегда, что в данном случае этот тест-метод написан как спецификация.

- ещё написать, что использование TDD помогает не разрабатывать ничего лишнего, что часто случается если программист увлекается — по всем правилам реализующий тесты код должен лишь проходить тест и ничего больше.

- про то, что сам приведённый тест имеет мало смысла и является лишь примером, чтобы обязательно прочитали абзац, да и вообще всю статью, да и вообще все статьи

- про то, что код prepareranges возможно не очень хорошее решение

- про то, что в идеале по правилам TDD мы должны были бы возвращать конкретные числа, но опускали этот этап

Offisial site
nose@googlecode
installation instructions
installation instructions-2
introduction to nose
Высиживание яиц
две статьи о nose по-русски
о TDD


setuptools


  • get ez_setup.py
  • run python ./ez_setup.py
  • (go $PYTHON/Scripts @ Windows and) run easy_install nose
  • (add to pyscripter)
  • just import nose
  • (run {{$PYTHON/Scripts/nosetests)

сделать картинку для xml-тега


#!/usr/bin/env/python
#-*- coding: utf-8 -*-
 
#-+- author: shaman.sir -+-
 
try:
    import wx
except ImportError:
    raise ImportError, "Can not find Wx library, it is required"
 
class A:
    def __init__(self):
        print "foo"
 
    def somefunc(self):
        print "bar"
 
class B(A):
    def somefunc(self):
        print "foobar"
 
if __name__ == "__main__":
        a = A()
    a.somefunc()
    b = B()
    b.somefunc()
Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License