diff --git a/tests/unit/test_github_driver.py b/tests/unit/test_github_driver.py
index 875a9d7..e8dff51 100644
--- a/tests/unit/test_github_driver.py
+++ b/tests/unit/test_github_driver.py
@@ -34,9 +34,6 @@
         self.fake_github.emitEvent(A.getPullRequestOpenedEvent())
         self.waitUntilSettled()
 
-        build_params = self.builds[0].parameters
-        self.assertEqual('master', build_params['ZUUL_BRANCH'])
-
         self.executor_server.hold_jobs_in_build = False
         self.executor_server.release()
         self.waitUntilSettled()
@@ -50,6 +47,7 @@
         zuulvars = job.parameters['zuul']
         self.assertEqual(str(A.number), zuulvars['change'])
         self.assertEqual(str(A.head_sha), zuulvars['patchset'])
+        self.assertEqual('master', zuulvars['branch'])
         self.assertEqual(1, len(A.comments))
         self.assertEqual(2, len(self.history))
 
diff --git a/tests/unit/test_scheduler.py b/tests/unit/test_scheduler.py
index 1e0affc..e5730e3 100755
--- a/tests/unit/test_scheduler.py
+++ b/tests/unit/test_scheduler.py
@@ -4830,7 +4830,7 @@
         self.waitUntilSettled()
 
         build = self.builds[-1]
-        self.assertEqual(self.getParameter(build, 'ZUUL_BRANCH'), 'mp')
+        self.assertEqual(build.parameters['zuul']['branch'], 'mp')
         path = os.path.join(build.jobdir.src_root, 'review.example.com',
                             'org/project-merge-branches')
         repo = git.Repo(path)
diff --git a/zuul/executor/client.py b/zuul/executor/client.py
index 3eebd2a..982ff3d 100644
--- a/zuul/executor/client.py
+++ b/zuul/executor/client.py
@@ -196,8 +196,6 @@
         params['ZUUL_PIPELINE'] = pipeline.name
         params['ZUUL_URL'] = item.current_build_set.zuul_url
         params['ZUUL_VOTING'] = job.voting and '1' or '0'
-        if hasattr(item.change, 'number'):
-            params['ZUUL_BRANCH'] = item.change.branch
 
         params['job'] = job.name
         params['timeout'] = job.timeout
