@Given("the traversal of")
    public void theTraversalOf(final String docString) {
        try {
            final String rawGremlin = tryUpdateDataFilePath(docString);

            // when parameters are used literally, they are converted to string representations that can be recognized by
            // the grammar and parsed inline. when they are used as variables, they are converted to objects that can be
            // applied to the script as variables.
            final String gremlin = world.useParametersLiterally() ? applyParameters(rawGremlin) : rawGremlin;

            traversal = parseGremlin(gremlin);
        } catch (Exception ex) {
            ex.printStackTrace();
            error = ex;
        }
    }
Some implementations of {@link VertexProperty} are not {@code Serializable} and may lead to test failures when passed as
parameters. One such instance is {@code HadoopVertexProperty}. This method detaches vertex properties as tests
should never require implementation-specific elements.
gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/features/StepDefinition.java