私はthisにstdout
の出力をチェックするpytestを書く方法について質問し、解決策を得ました。それが書かれているかどうかを確認するためにPythonでファイルへの出力をチェックするpytest関数を記述していますか?
def writetoafile():
file = open("output.txt",w)
file.write("hello\n")
file.write("world\n")
file.close()
今pytest機能:
def test_writeToFile():
file = open("ouput.txt",'r')
expected = "hello\nworld\n"
assert expected==file.read()
今、私は内容がファイルに書き込まれた内容が期待 などのように書かれていることをされているかどうかを確認するために、
test case
を作成する必要があります
これはうまくいくと思われますが、これは理想的ではないと思います。特にハードコーディングです。どのようにこれらの種類のファイルに通常書かれたtest functions
書かれていますか?
なぜこれは理想的ではないでしょうか?あなたは内容が期待どおりに書かれているかチェックしたいと書いていますので、ファイルを調べてチェックするのが最善の選択肢です。一連のランダムな文字で変数を作成し、それが正常に書き込まれたかどうかを確認することができます。 "file.read()"でデータが追加されたかどうかを調べることができます(ただし、フラグ 'w'を使用すると、ここで悪いテストになります)。あなたが何かをテストしたいのですが?おそらく、あなたが望むものを知っていることは、ほとんどのテストのように、ここで真の問題です。 –