'Run pytest as a subprocess with given arguments.
Any plugins added to the :py:attr:`plugins` list will added
using the ``-p`` command line option.  Addtionally
``--basetemp`` is used put any temporary files and directories
in a numbered directory prefixed with "runpytest-" so they do
not conflict with the normal numberd pytest location for
temporary files and directories.
Returns a :py:class:`RunResult`.'

def runpytest_subprocess(self, *args, **kwargs):

    p = py.path.local.make_numbered_dir(prefix='runpytest-', keep=None, rootdir=self.tmpdir)
    args = ((('--basetemp=%s' % p),) + args)
    plugins = [x for x in self.plugins if isinstance(x, str)]
    if plugins:
        args = (('-p', plugins[0]) + args)
    args = (self._getpytestargs() + args)
    return self.run(*args)
