diff --git a/src/Illuminate/Contracts/Queue/Job.php b/src/Illuminate/Contracts/Queue/Job.php
index <HASH>..<HASH> 100644
--- a/src/Illuminate/Contracts/Queue/Job.php
+++ b/src/Illuminate/Contracts/Queue/Job.php
@@ -62,6 +62,13 @@ interface Job
     public function attempts();
 
     /**
+     * Mark the job as "failed".
+     *
+     * @return void
+     */
+    public function markAsFailed();
+
+    /**
      * Process an exception that caused the job to fail.
      *
      * @param  \Throwable  $e
diff --git a/tests/Queue/QueueWorkerTest.php b/tests/Queue/QueueWorkerTest.php
index <HASH>..<HASH> 100755
--- a/tests/Queue/QueueWorkerTest.php
+++ b/tests/Queue/QueueWorkerTest.php
@@ -426,6 +426,11 @@ class WorkerFakeJob implements QueueJobContract
         return $this->attempts;
     }
 
+    public function markAsFailed()
+    {
+        $this->failed = true;
+    }
+
     public function failed($e)
     {
         $this->markAsFailed();
Add method 'markAsFailed' to queue job contract