2017-12-05 5 views
0

Jmeter Web DriverにjavascriptとJavaのスクリプトを書きました。JavaとJavascript - Linuxで最後に変更されたもの

Windowsシステムでは、スクリプトは完全に実行されています。しかし、Linuxシステムでは、私は奇妙な問題があります。私が得た最後の改造はうまくいかない。 front_end.jtlは昨日変更されましたが、スクリプトは今日10:00にミリ秒のタイムスタンプで言います。

私を助けてください。あなたのためのトリックを行う必要があります

var lastmodifjtl = java.nio.file.Files.getLastModifiedTime(java.nio.file.Paths.get(frontjtl.toURI())) 

// Importing packages (and all classes in package) from Java into Javascript var pkg = JavaImporter(org.openqa.selenium) 
    var support_ui = JavaImporter(org.openqa.selenium.support.ui.WebDriverWait) 
    // We don't use wait in this very simple test, but here is way to access for more realistic testing 
    var wait=new support_ui.WebDriverWait(WDS.browser, 5) 

    // Start recording the time for this request 

    WDS.sampleResult.sampleStart(); 

    // Let's get a page 

    var baseUrl = "cnyw${FE}.mycore.core-cloud.net" 

    WDS.browser.get("https://"+ baseUrl) 

    var frontjtl = new java.io.File('/home/mycore/front_end.jtl') 
    var frontlog = new java.io.File('/home/mycore/jmeter_front_end.log') 

    var lastmodifjtl = frontjtl.lastModified() 
    var lastmodiflog = frontlog.lastModified() 

    if (lastmodifjtl = lastmodiflog) { 
    var screenshot = WDS.browser.getScreenshotAs(pkg.OutputType.FILE) 
    screenshot.renameTo(new java.io.File('/home/mycore/screenshots/tools/screenshot_cnyw${FE}.png')) 
    } 

    // Record the time of the request 
    WDS.sampleResult.sampleEnd(); 
+1

これはおそらくファイルをlinuxマシンにコピーし、新しい変更日(コピー日)の新しいファイルを作成したためです。https://superuser.com/questions/114195/how-to-copy-a-file-in- unix-without-altering-its-last-modified-time – user7294900

+0

いいえ、ファイルはすでに作成されており、テストでエラーが発生したときに修正されました。 –

+0

あなたは最終的に正しいです。変更された日付は、コマンドnew fileによって設定されます。私は新しいファイルを作成したくない、私はファイルを使用したい。これを行う方法 ? –

答えて

0

私は、代わりにFiles.getLastModifiedTime()を使用してのようなものをお勧めします。念のため

は、より多くの情報

+0

私はこれを試して、私は同じ日付を持っています。問題はfrontjtlとfrontlogの初期化です。新しいファイルは、lasmodified時間を実行時に設定します。 –

0

を私は直接Javaでスクリプトを書き換えています。すべては今大丈夫です。

関連する問題