Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>You have 2 options:</p> <p>1) Pass the file path to your test via a system property (<a href="http://maven.apache.org/plugins/maven-surefire-plugin/examples/system-properties.html" rel="noreferrer">docs</a>)</p> <p>In your pom you could do something like:</p> <pre><code>&lt;project&gt; [...] &lt;build&gt; &lt;plugins&gt; &lt;plugin&gt; &lt;groupId&gt;org.apache.maven.plugins&lt;/groupId&gt; &lt;artifactId&gt;maven-surefire-plugin&lt;/artifactId&gt; &lt;version&gt;2.4.2&lt;/version&gt; &lt;configuration&gt; &lt;systemProperties&gt; &lt;property&gt; &lt;name&gt;filePath&lt;/name&gt; &lt;value&gt;/path/to/the/file&lt;/value&gt; &lt;/property&gt; &lt;/systemProperties&gt; &lt;/configuration&gt; &lt;/plugin&gt; &lt;/plugins&gt; &lt;/build&gt; [...] &lt;/project&gt; </code></pre> <p>Then in your test you can do:</p> <pre><code>System.getProperty("filePath"); </code></pre> <p>2) Put the file inside src/test/resources under the same package as your test class. Then you can get to the file using Class.getResourceAsStream(String fileName) (<a href="http://java.sun.com/javase/6/docs/api/java/lang/Class.html#getResourceAsStream(java.lang.String)" rel="noreferrer">docs</a>).</p> <p>I would highly recommend option 2 over option 1. Passing things to your tests via system properties is very dirty IMO. It couples your tests unnecessarily to the test runner and will cause headaches down the road. Loading the file off the classpath is the way to go and that's why maven has the concept of a resources directory.</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload