Issue #7295: Do not use a hardcoded file name in test_tarfile.
diff --git a/Lib/test/test_tarfile.py b/Lib/test/test_tarfile.py
index 1240e1a..74a8dac 100644
--- a/Lib/test/test_tarfile.py
+++ b/Lib/test/test_tarfile.py
@@ -27,11 +27,8 @@
 def md5sum(data):
     return md5(data).hexdigest()
 
-def path(path):
-    return test_support.findfile(path)
-
-TEMPDIR = os.path.join(tempfile.gettempdir(), "test_tarfile_tmp")
-tarname = path("testtar.tar")
+TEMPDIR = os.path.abspath(test_support.TESTFN)
+tarname = test_support.findfile("testtar.tar")
 gzipname = os.path.join(TEMPDIR, "testtar.tar.gz")
 bz2name = os.path.join(TEMPDIR, "testtar.tar.bz2")
 tmpname = os.path.join(TEMPDIR, "tmp.tar")
@@ -1263,8 +1260,7 @@
 
 
 def test_main():
-    if not os.path.exists(TEMPDIR):
-        os.mkdir(TEMPDIR)
+    os.makedirs(TEMPDIR)
 
     tests = [
         UstarReadTest,
diff --git a/Misc/NEWS b/Misc/NEWS
index e3638aa..cf1f54a 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -1559,6 +1559,8 @@
 Tests
 -----
 
+- Issue #7295: Do not use a hardcoded file name in test_tarfile.
+
 - Issue #7270: Add some dedicated unit tests for multi-thread synchronization
   primitives such as Lock, RLock, Condition, Event and Semaphore.