Có cách nào để tô màu đầu ra thử nghiệm Django không? Về cơ bản yếu tố Đỏ/Xanh cho kết quả vượt qua hoặc không thành công?Colorizing đầu ra của các thử nghiệm Django
Tôi đang sử dụng Mac OS X sử dụng Terminal.app
.
Có cách nào để tô màu đầu ra thử nghiệm Django không? Về cơ bản yếu tố Đỏ/Xanh cho kết quả vượt qua hoặc không thành công?Colorizing đầu ra của các thử nghiệm Django
Tôi đang sử dụng Mac OS X sử dụng Terminal.app
.
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 ...
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ừ đó.
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.
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.
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
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 '. –
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) –