私たちは、自動テストを行っている、それはいくつかのファイルが発生する可能性があり、需要の一部に対処する必要があり、我々はどのようにこのようできた、自動テスト・エンジニアとして、当然のことながら、直接カタログファイルを書き込むことによって操作することができますか?そこOSに付属しているのpython、我々はこれらの問題に対処するosモジュールによって助けることができます
OSモジュール
OSライブラリーは、Pythonの標準ライブラリが機能し、一般的に使用されるパスの操作、プロセス管理、および他の環境パラメータの数百人が含まれています
os.path
os.pathファイル操作、特定の操作のメインパス?私たちは下を見続けることができます
ここでは、pycharmの少しの知識を理解する必要があり、pycharmで__FILE__は、ファイル自体は、出力が絶対パスであることを示します。
1、現在のファイル名
#戻り値現在のファイルの名前 A = os.path.basename(__FILE__ ) 印刷(' 現在のファイル名:S%'%A) 出力: 現在のファイル名:a1.py
2、現在のファイルの絶対パス
#現在のファイルの絶対パス B = os.path.abspathと(__FILE__ ) プリント(' 現在のファイルの絶対パス:%S '%B) 出力: 現在のファイルの絶対パス:E:\ python1 \アプリ\ a1.py
3、現在のファイル・パス
#現在のファイルパス C = os.path.dirname(__FILE__ ) 印刷(' 現在のファイルパス:%S '%C) 出力: 現在のファイルのパス:E: / python1 /アプリケーション
図4に示すように、ファイルが存在するかどうかを判断します
#かを決定パスが存在するかどうか Dは= os.path.exists(__FILE__は) 印刷(' :%Sファイルが存在'%D) E = os.path.exists(' E:\\ python2 ' ) プリント(' ファイルが存在する:%をS "%E) 出力: ファイルが存在している:真の ファイルが存在する:偽の
図5に示すように、パスがあるか否かを判断します
#パスが存在する A = os.path.lexists(' E:\\ python1 ' ) 印刷(' パスが存在する:S%'%A) B = os.path.lexists(' E:\\ python2 ' ) 印刷(' パスが存在する:S%'%B) 出力: パスが存在する:真の パスが存在する:偽を
6、リターンファイルの修正時刻
#戻り、ファイルの変更時間 A = os.path.getatime(' E:\\ python1 ' ) プリント(' ファイル変更時間:S%'%(time.strftime(" %D %% Y-M-%のH:% M:%S " 、time.localtime(A)))) 出力: ファイルの更新時刻: 2019年11月26日夜03時24分59秒
図7に示すように、ファイルが存在するかどうかを判断します
#ファイルが存在するかどうかを判断 A = os.path.getsize(__FILE__ ) 印刷(' :S%ファイルが存在し、ファイルサイズがある'%A) の試行: B = os.path.getsize(" E:\\ python1 \ A2を。 PY 「) を除き、例外としてMSG: 印刷(」エラーがある:%はS "%のMSG) 出力: ファイルが存在する場合、ファイルサイズがある: 1217 エラー:[WinError 123]ファイル名、ディレクトリ名、またはボリュームラベルの構文が間違っています。:' E:\\ python1 \ x072.py '
8真のパス、ファイル
#ファイル真のパス A = os.path.realpath(__FILE__ ) 印刷(' 実際のパス:%S '%A) 出力: 実際のパス:E:\ python1 \アプリ\ a1.py
9、元祖リターンのファイルのディレクトリとファイル名を分割
#スプリット・パスとファイル名の Aはos.path.split(= __FILE__ ) 印刷(' :%sの、ファイル名:ディレクトリをS%'%(A [0]、A [1。])) 出力: ファイルディレクトリ: E: / python1 /アプリケーション、ファイル名:a1.py
10、合成ルートディレクトリとファイル
#ディレクトリとファイルは、パスにマージされている A = os.path.join(' :\\ \\ python1のApp E '、' 123.jpg ' ) を印刷(' パスにマージ:%S '%のA) 出力: パスにマージ:E:\ python1 \アプリケーション\ 123.jpg
我々はすべての追加与えて、バックを使用し、書いていない、ここだけいくつかはos.path、いくつかの静かないくつかの一般的に使用されるテストモジュールの内容を書いて、前に使用されていません。