スクリプトが失敗した場合に例外を発生させる

aph

Pythonスクリプトtutorial.pyがあります。Pythonテストスイート内にあるファイルtest_tutorial.pyからこのスクリプトを実行したいと思います。tutorial.pyが例外なく実行される場合、テストに合格する必要があります。tutorial.pyの実行中に例外が発生した場合、テストを失敗させたいと思います。

これが私がtest_tutorial.pyを書いている方法ですが、それは望ましい振る舞いを生み出しませ

from os import system
test_passes = False
try:
    system("python tutorial.py")
    test_passes = True
except:
    pass
assert test_passes

上記の制御フローが正しくないことがわかりました。tutorial.pyで例外が発生した場合、assert行は実行されません。

外部スクリプトが例外を発生させるかどうかをテストする正しい方法は何ですか?

パドレイク・カニンガム

エラーがない場合は次のsようになります0

from os import system
s=system("python tutorial.py")
assert  s == 0

またはサブプロセスを使用します

from subprocess import PIPE,Popen

s = Popen(["python" ,"tutorial.py"],stderr=PIPE)

_,err = s.communicate() # err  will be empty string if the program runs ok
assert not err

あなたのtry / exceptionはチュートリアルファイルから何もキャッチしていません、あなたはそれの外にすべてを動かすことができます、そしてそれは同じように振る舞います:

from os import system
test_passes = False

s = system("python tutorial.py")
test_passes = True

assert test_passes

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

スクリプトが失敗した場合に例外を発生させる

分類Dev

Pythonで例外が発生して処理された場合、テストケースに失敗しますか?

分類Dev

Powershellスクリプトで条件が発生した場合、Jenkinsビルドに失敗します

分類Dev

Selenium / Testng:例外が発生した場合、@ Testの残りをスキップまたは失敗します

分類Dev

sshを介したSQLスクリプトの使用は失敗しますが、ホストで直接開始された場合は失敗しません

分類Dev

例外が発生した場合にTask.WaitAll()を中断させる方法は?

分類Dev

空手を使用してbashスクリプトを実行し、スクリプトが失敗した場合に失敗する方法

分類Dev

抽象クラスの属性名が間違って入力された場合に例外を発生させる方法

分類Dev

mod_wsgi WSGI スクリプト ファイルの解析に失敗しました | WSGI スクリプトの処理中に例外が発生しました | 「サイト」モジュールをインポートできません

分類Dev

タイムアウト例外が発生した場合、スクリプトを再起動するにはどうすればよいですか?

分類Dev

テストが失敗した場合にDockerビルドを失敗させる

分類Dev

UPDATEクエリ中にWHEREが存在しない場合に例外を発生させる

分類Dev

例外が発生した場合は、httpリクエスト本文をログに記録します

分類Dev

curlが失敗した場合にシェルスクリプトを停止する方法

分類Dev

ObjectMapperが例外をスローしたときに統合テストを失敗させる方法

分類Dev

攻撃が発生した場合に管理者にメールを送信するスクリプト

分類Dev

例外が発生した場合、どのようにしてファイルストリームに行を再読み込みさせますか?

分類Dev

IPython-シェルコマンドが失敗したときに例外を発生させる

分類Dev

スクリプトを期待する-例外を発生させる

分類Dev

失敗した場合にURLを変更するときにChromeに例外をスローさせる方法

分類Dev

工場が検証に失敗した場合、どうすればエラーを発生させることができますか?

分類Dev

ElasticsearchCrudRepositoryの一括挿入でエラーが発生する-検証に失敗しました:1:リクエストが追加されていません

分類Dev

コードに例外がある場合、Junitテストケースを失敗させる方法は?

分類Dev

scpが失敗した場合、wgetを試してみることをスクリプトで伝える方法

分類Dev

cx_Freezeがwxpythonスクリプト用にmsiを生成すると、ImportErrorが発生します:DLLの読み込みに失敗しました

分類Dev

mechanizeには、リクエストが失敗した場合にリクエストを再試行するオプションがありますか?

分類Dev

テストが失敗した場合にのみスクリーンショットを作成する

分類Dev

一部が失敗した場合でも、Mavenにすべてのテストを実行させる

分類Dev

502エラーが発生したときにnginxにスクリプトを実行させる方法

Related 関連記事

  1. 1

    スクリプトが失敗した場合に例外を発生させる

  2. 2

    Pythonで例外が発生して処理された場合、テストケースに失敗しますか?

  3. 3

    Powershellスクリプトで条件が発生した場合、Jenkinsビルドに失敗します

  4. 4

    Selenium / Testng:例外が発生した場合、@ Testの残りをスキップまたは失敗します

  5. 5

    sshを介したSQLスクリプトの使用は失敗しますが、ホストで直接開始された場合は失敗しません

  6. 6

    例外が発生した場合にTask.WaitAll()を中断させる方法は?

  7. 7

    空手を使用してbashスクリプトを実行し、スクリプトが失敗した場合に失敗する方法

  8. 8

    抽象クラスの属性名が間違って入力された場合に例外を発生させる方法

  9. 9

    mod_wsgi WSGI スクリプト ファイルの解析に失敗しました | WSGI スクリプトの処理中に例外が発生しました | 「サイト」モジュールをインポートできません

  10. 10

    タイムアウト例外が発生した場合、スクリプトを再起動するにはどうすればよいですか?

  11. 11

    テストが失敗した場合にDockerビルドを失敗させる

  12. 12

    UPDATEクエリ中にWHEREが存在しない場合に例外を発生させる

  13. 13

    例外が発生した場合は、httpリクエスト本文をログに記録します

  14. 14

    curlが失敗した場合にシェルスクリプトを停止する方法

  15. 15

    ObjectMapperが例外をスローしたときに統合テストを失敗させる方法

  16. 16

    攻撃が発生した場合に管理者にメールを送信するスクリプト

  17. 17

    例外が発生した場合、どのようにしてファイルストリームに行を再読み込みさせますか?

  18. 18

    IPython-シェルコマンドが失敗したときに例外を発生させる

  19. 19

    スクリプトを期待する-例外を発生させる

  20. 20

    失敗した場合にURLを変更するときにChromeに例外をスローさせる方法

  21. 21

    工場が検証に失敗した場合、どうすればエラーを発生させることができますか?

  22. 22

    ElasticsearchCrudRepositoryの一括挿入でエラーが発生する-検証に失敗しました:1:リクエストが追加されていません

  23. 23

    コードに例外がある場合、Junitテストケースを失敗させる方法は?

  24. 24

    scpが失敗した場合、wgetを試してみることをスクリプトで伝える方法

  25. 25

    cx_Freezeがwxpythonスクリプト用にmsiを生成すると、ImportErrorが発生します:DLLの読み込みに失敗しました

  26. 26

    mechanizeには、リクエストが失敗した場合にリクエストを再試行するオプションがありますか?

  27. 27

    テストが失敗した場合にのみスクリーンショットを作成する

  28. 28

    一部が失敗した場合でも、Mavenにすべてのテストを実行させる

  29. 29

    502エラーが発生したときにnginxにスクリプトを実行させる方法

ホットタグ

アーカイブ