CITI maintains pynfs, a suite of several Python tools for NFS4, useful for testing purposes. Its primary components are a server tester, useful for testing server response to unusual error conditions and/or a badly behaving client, and a functional memory-based server written in Python, intended as the basis of an eventual client tester.
Two different versions are available, one for NFSv4.0 testing, one for NFSv4.1.
The NFSv4.0 suite is available from git://git.linux-nfs.org/projects/iisaman/pynfs.git (tarball, README).
The NFSv4.1 suite is available from git://git.linux-nfs.org/projects/iisaman/newpynfs.git.
This is based on work originally done by Peter Åstrand. An (outdated) website describing the original version can be found here. We eventually rewrote it entirely, with a nicer test framework and clearer output, calling the result "newpynfs" (now just "pynfs").
CITI's Pynfs development has been partially sponsored by a grant from Network Appliance: statement of work.