View source on GitHub |
Execute the decorated test in both graph mode and eager mode.
tfds.testing.run_in_graph_and_eager_modes(
func=None, config=None, use_gpu=True
)
This function returns a decorator intended to be applied to test methods in
a test_case.TestCase
class. Doing so will cause the contents of the test
method to be executed twice - once in graph mode, and once with eager
execution enabled. This allows unittests to confirm the equivalence between
eager and graph execution.
For example, consider the following unittest:
class SomeTest(tfds.testing.TestCase):
@tfds.testing.run_in_graph_and_eager_modes
def test_foo(self):
x = tf.constant([1, 2])
y = tf.constant([3, 4])
z = tf.add(x, y)
self.assertAllEqual([4, 6], self.evaluate(z))
if __name__ == '__main__':
tfds.testing.test_main()
This test validates that tf.add()
has the same behavior when computed with
eager execution enabled as it does when constructing a TensorFlow graph and
executing the z
tensor with a session.
Returns | |
---|---|
Returns a decorator that will run the decorated test method twice: once by constructing and executing a graph in a session and once with eager execution enabled. |