2011-10-19 24 views

Trả lời

3

Nếu bạn đã sử dụng vải cho việc triển khai, bạn có thể sử dụng đoạn mã này từ @codeinthehole's blog post:

from fabric.colors import _wrap_with 

green_bg = _wrap_with('42') 
red_bg = _wrap_with('41') 

# Set the list of apps to test 
env.test_apps = "app1 app2" 

def test(): 
    with settings(warn_only=True): 
     result = local('./manage.py test %(test_apps)s --settings=settings_test -v 2 --failfast' % env, capture=False) 
    if result.failed: 
     print red_bg("Some tests failed") 
    else: 
     print green_bg("All tests passed - have a banana!") 

Nó không colorise đầu ra thử nghiệm cá nhân, nhưng nó cung cấp cho bạn ngay lập tức đỏ/xanh sự hài lòng của ...

2

Hãy xem Print in terminal with colors using Python?. Bạn sẽ có thể sửa đổi hoặc cuộn ra màu sắc của riêng bạn từ đó.

+0

Ngoài ra còn có một gói phần mềm mà không khá dễ dàng gọi colorama này (http: //pypi.python.org/pypi/colorama) –

1

Tôi đã tìm thấy một giải pháp có thể gọi là pyrg, trong số question này. Thật không may, đã không làm việc như mong đợi đối với tôi.

6

tôi thấy pyrg làm việc khá tốt:

pyrg manage.py test 

Lệnh yêu cầu có thể được cài đặt bằng pip:

pip install pyrg 
+1

Xấu hổ này không hoạt động với python 3 ': /' – meshy

0

Nếu bạn không sử dụng Fabric, bạn có thể thích redgreenunittest. Về cơ bản, bạn chỉ cần đặt nó ở vị trí thích hợp trong dự án của bạn (có thể là trong môi trường ảo của bạn), và sau đó tham khảo nó như TEST_RUNNER trong cài đặt của bạn như thế này:

TEST_RUNNER="redgreenunittest.django.simple.RedGreenTestSuiteRunner" 

Nếu bạn chỉ sử dụng helper thử nghiệm của Django mã (chủ yếu là django.test.TestCase), sau đó nên làm điều đó. nếu không bạn có thể cần phải tham chiếu redgreenunittest trực tiếp như vậy:

import redgreenunittest as unittest 

Sau đó, bạn chỉ cần chạy thử nghiệm của mình. Và họ sẽ có màu sắc. Như phép màu.

4

Tôi biết đây là một câu hỏi cũ, nhưng django-rainbowtests nhắm đến việc này. Lỗi và Lỗi là Đỏ, Thành công có màu xanh lục và nó làm nổi bật mã của dự án của bạn trong các dấu vết ngăn xếp lớn hơn.

6

redgreenunittests sự là giải pháp đơn giản nhất và nó hoạt động tuyệt vời với python 3.x

Install nó

pip install redgreenunittest

thêm dòng sau vào settings.py

TEST_RUNNER = "redgreenunittest.django.runner.RedGreenDiscoverRunner"

và đừng quên t o thưởng thức :)

./manage test

+0

Thực ra gói là redgreenunittest (mặc dù git repo có "s"), vì vậy bạn sẽ muốn chạy 'pip install redgreenunittest '. –

Các vấn đề liên quan