読者です 読者をやめる 読者になる 読者になる

PycharmでDjangoのtest実行でunittest.skipがあるとエラー

pycharm memo

Pycharmの起動構成からdjangoのtestを実行する場合、unittest.skipにunicode文字列を渡しているとエラーになるみたいなのでメモしておく。

# coding=utf-8
from django.test import TestCase
from django.utils import unittest


class TestSample(TestCase):
    def setUp(self):
        super(TestSample, self).setUp()

    @unittest.skip(u"あ")
    def test_sample(self):
        self.assertTrue(True)
UnicodeEncodeError: 'ascii' codec can't encode character u'\u3042' in position 0: ordinal not in range(128)

unittest.skipに渡す文字列をstr型にするか、unicode型でもascii文字オンリーにすればエラーにならない。

pycharmから実行する場合だけエラーになり、コマンドラインからmanage.py testでテストする場合は問題ない。