Так что, если client.post ожидает файл, подобный объекту, вы можете создать пример изображения (если вы хотите визуально проверить результат после тестов) или просто сделать pp размером 1 пиксель и прочитать его из консоли
open('1px.png', 'rb').read()
который в моем случае выбрасывается
image_data = '\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00\x01\x00\x00\x00\x01\x08\x02\x00\x00\x00\x90wS\xde\x00\x00\x00\x01sRGB\x00\xae\xce\x1c\xe9\x00\x00\x00\tpHYs\x00\x00\x0b\x13\x00\x00\x0b\x13\x01\x00\x9a\x9c\x18\x00\x00\x00\x07tIME\x07\xdb\x0c\x17\x020;\xd1\xda\xcf\xd2\x00\x00\x00\x0cIDAT\x08\xd7c\xf8\xff\xff?\x00\x05\xfe\x02\xfe\xdc\xccY\xe7\x00\x00\x00\x00IEND\xaeB`\x82'
тогда вы можете использовать StringIO, который действует как файл как объект, поэтому выше, изображение будет
from StringIO import StringIO
def test_issue_add_post(self):
...
image = StringIO(image_data)
...
и у вас будет файл как объект с данными изображения