2017-06-06 60 views
0

戻り値のない関数に対してpytestを実行しようとしていますが、pytetsでは値がNoneであることは明らかです。私はそこに解決策があるのだろうかと思っていたのですか?ここ戻り値のないpytest関数

は、私がテストしようとしている機能である:

def print_top_movies_url(): 
    for item in movie_link[:100]: 
     print item.contents[1] 
+1

"値なし"と区別するために何をしようとしていますか? – phd

答えて

0

Pythonで、戻り値のない関数のようなものはありません。関数が明示的に値を返さなかった場合、Pythonは暗黙的にNoneを返します。

+0

これは間違いありませんが、質問には答えません。 –

0

最善のことは、トップムービーを取得して印刷することです。

たとえば、あなたはこのようになりますtop_movie_urlsかもしれない:

def top_movie_urls(): 
    urls = [] 
    for item in movie_link[:100]: 
     urls.append(item.contents[1]) 
    return urls 

を(あるいは作ることgenerator function)をテストするのは簡単だし、あなたがそれを呼び出すどこ、あなたができるようになりました

だけprint('\n'.join(top_movie_urls()))のようにしてください。


あなたは本当に代わりに、出力をテストする場合は、テスト関数の出力にアクセスし、それをチェックするためにpytestのoutput capturingを使用することができます。