diff --git a/Library/Homebrew/cask/spec/cask/artifact/uninstall_spec.rb b/Library/Homebrew/cask/spec/cask/artifact/uninstall_spec.rb
index e3595621d71906d7734282f56eb7744e9787112f..4c09ea302aa80e290f4d8f027ff6253009b09c5c 100644
--- a/Library/Homebrew/cask/spec/cask/artifact/uninstall_spec.rb
+++ b/Library/Homebrew/cask/spec/cask/artifact/uninstall_spec.rb
@@ -7,19 +7,32 @@ describe Hbc::Artifact::Uninstall do
     Hbc::Artifact::Uninstall.new(cask, command: Hbc::FakeSystemCommand)
   }
 
-  let(:absolute_path) { Pathname.new("#{TEST_TMPDIR}/absolute_path") }
-  let(:path_with_tilde) { Pathname.new("#{TEST_TMPDIR}/path_with_tilde") }
-  let(:glob_path1) { Pathname.new("#{TEST_TMPDIR}/glob_path1") }
-  let(:glob_path2) { Pathname.new("#{TEST_TMPDIR}/glob_path2") }
-
-  before(:each) do
-    FileUtils.touch(absolute_path)
-    FileUtils.touch(path_with_tilde)
-    FileUtils.touch(glob_path1)
-    FileUtils.touch(glob_path2)
-    ENV["HOME"] = TEST_TMPDIR
-    shutup do
-      InstallHelper.install_without_artifacts(cask)
+  let(:dir) { TEST_TMPDIR }
+  let(:absolute_path) { Pathname.new("#{dir}/absolute_path") }
+  let(:path_with_tilde) { Pathname.new("#{dir}/path_with_tilde") }
+  let(:glob_path1) { Pathname.new("#{dir}/glob_path1") }
+  let(:glob_path2) { Pathname.new("#{dir}/glob_path2") }
+
+  around(:each) do |example|
+    begin
+      ENV["HOME"] = dir
+
+      paths = [
+        absolute_path,
+        path_with_tilde,
+        glob_path1,
+        glob_path2,
+      ]
+
+      FileUtils.touch paths
+
+      shutup do
+        InstallHelper.install_without_artifacts(cask)
+      end
+
+      example.run
+    ensure
+      FileUtils.rm_f paths
     end
   end
 
diff --git a/Library/Homebrew/cask/spec/cask/artifact/zap_spec.rb b/Library/Homebrew/cask/spec/cask/artifact/zap_spec.rb
index c49cebbb89466e1088e4edca51bc96a241f7962b..47090c99a32ec8965ffa61b50fb389bb4d289aba 100644
--- a/Library/Homebrew/cask/spec/cask/artifact/zap_spec.rb
+++ b/Library/Homebrew/cask/spec/cask/artifact/zap_spec.rb
@@ -8,19 +8,32 @@ describe Hbc::Artifact::Zap do
     Hbc::Artifact::Zap.new(cask, command: Hbc::FakeSystemCommand)
   }
 
-  let(:absolute_path) { Pathname.new("#{TEST_TMPDIR}/absolute_path") }
-  let(:path_with_tilde) { Pathname.new("#{TEST_TMPDIR}/path_with_tilde") }
-  let(:glob_path1) { Pathname.new("#{TEST_TMPDIR}/glob_path1") }
-  let(:glob_path2) { Pathname.new("#{TEST_TMPDIR}/glob_path2") }
-
-  before(:each) do
-    FileUtils.touch(absolute_path)
-    FileUtils.touch(path_with_tilde)
-    FileUtils.touch(glob_path1)
-    FileUtils.touch(glob_path2)
-    ENV["HOME"] = TEST_TMPDIR
-    shutup do
-      InstallHelper.install_without_artifacts(cask)
+  let(:dir) { TEST_TMPDIR }
+  let(:absolute_path) { Pathname.new("#{dir}/absolute_path") }
+  let(:path_with_tilde) { Pathname.new("#{dir}/path_with_tilde") }
+  let(:glob_path1) { Pathname.new("#{dir}/glob_path1") }
+  let(:glob_path2) { Pathname.new("#{dir}/glob_path2") }
+
+  around(:each) do |example|
+    begin
+      ENV["HOME"] = dir
+
+      paths = [
+        absolute_path,
+        path_with_tilde,
+        glob_path1,
+        glob_path2,
+      ]
+
+      FileUtils.touch paths
+
+      shutup do
+        InstallHelper.install_without_artifacts(cask)
+      end
+
+      example.run
+    ensure
+      FileUtils.rm_f paths
     end
   end