diff --git a/src/CaptchaPointInterface.php b/src/CaptchaPointInterface.php
index 5845616..52d7f2d 100755
--- a/src/CaptchaPointInterface.php
+++ b/src/CaptchaPointInterface.php
@@ -27,22 +27,6 @@ interface CaptchaPointInterface extends ConfigEntityInterface {
   public function setFormId($form_id);
 
   /**
-   * Getter for label property.
-   *
-   * @return string
-   *   Label string.
-   */
-  public function getLabel();
-
-  /**
-   * Setter for label property.
-   *
-   * @param string $label
-   *   Label string.
-   */
-  public function setLabel($label);
-
-  /**
    * Getter for captcha type property.
    */
   public function getCaptchaType();
diff --git a/src/Entity/CaptchaPoint.php b/src/Entity/CaptchaPoint.php
index 4b6c458..77326f2 100755
--- a/src/Entity/CaptchaPoint.php
+++ b/src/Entity/CaptchaPoint.php
@@ -8,13 +8,13 @@ use Drupal\Core\Config\Entity\ConfigEntityBase;
 /**
  * Defines the CaptchaPoint entity.
  *
- * The 'rendered' tag for the List cache is necessary since captchas have to be
- * rerendered once they are modified. Invalidating the render cache ensures
+ * The 'rendered' tag for the List cache is necessary since CAPTCHAs have to be
+ * rendered once they are modified. Invalidating the render cache ensures
  * we always display the correct captcha for every form.
  *
  * @ConfigEntityType(
  *   id = "captcha_point",
- *   label = @Translation("Captcha Point"),
+ *   label = @Translation("CAPTCHA Point"),
  *   handlers = {
  *     "list_builder" = "Drupal\captcha\Controller\CaptchaPointListBuilder",
  *     "form" = {
@@ -50,10 +50,18 @@ use Drupal\Core\Config\Entity\ConfigEntityBase;
  * )
  */
 class CaptchaPoint extends ConfigEntityBase implements CaptchaPointInterface {
+  /**
+   * CAPTCHA type.
+   *
+   * @var string
+   */
   public $captchaType;
 
-  protected $label;
-
+  /**
+   * Form id.
+   *
+   * @var string
+   */
   public $formId;
 
   /**
@@ -80,20 +88,6 @@ class CaptchaPoint extends ConfigEntityBase implements CaptchaPointInterface {
   /**
    * {@inheritdoc}
    */
-  public function getLabel() {
-    return $this->label;
-  }
-
-  /**
-   * {@inheritdoc}
-   */
-  public function setLabel($label) {
-    $this->label = $label;
-  }
-
-  /**
-   * {@inheritdoc}
-   */
   public function getCaptchaType() {
     if (isset($this->captchaType)) {
       return $this->captchaType;
diff --git a/src/Form/CaptchaPointDeleteForm.php b/src/Form/CaptchaPointDeleteForm.php
index fc43bbe..2a78af2 100755
--- a/src/Form/CaptchaPointDeleteForm.php
+++ b/src/Form/CaptchaPointDeleteForm.php
@@ -15,7 +15,9 @@ class CaptchaPointDeleteForm extends EntityConfirmFormBase {
    * {@inheritdoc}
    */
   public function getQuestion() {
-    return $this->t('Are you sure you want to delete %name?', ['%name' => $this->entity->label()]);
+    return $this->t('Are you sure you want to delete %name?', [
+      '%name' => $this->entity->id(),
+    ]);
   }
 
   /**
@@ -37,7 +39,9 @@ class CaptchaPointDeleteForm extends EntityConfirmFormBase {
    */
   public function submitForm(array &$form, FormStateInterface $form_state) {
     $this->entity->delete();
-    drupal_set_message($this->t('Captcha point %label has been deleted.', ['%label' => $this->entity->label()]));
+    drupal_set_message($this->t('CAPTCHA Point %label has been deleted.', [
+      '%label' => $this->entity->id(),
+    ]));
     $form_state->setRedirectUrl($this->getCancelUrl());
   }
 
diff --git a/src/Form/CaptchaPointDisableForm.php b/src/Form/CaptchaPointDisableForm.php
index 89b7061..bc65fa8 100644
--- a/src/Form/CaptchaPointDisableForm.php
+++ b/src/Form/CaptchaPointDisableForm.php
@@ -45,7 +45,9 @@ class CaptchaPointDisableForm extends EntityConfirmFormBase {
   public function submitForm(array &$form, FormStateInterface $form_state) {
     $this->entity->disable();
     $this->entity->save();
-    drupal_set_message($this->t('Captcha point %label has been disabled.', ['%label' => $this->entity->label()]));
+    drupal_set_message($this->t('CAPTCHA Point %label has been disabled.', [
+      '%label' => $this->entity->id(),
+    ]));
     $form_state->setRedirect('captcha_point.list');
   }
 
diff --git a/src/Form/CaptchaPointEnableForm.php b/src/Form/CaptchaPointEnableForm.php
index e7805b6..c3a6fe2 100644
--- a/src/Form/CaptchaPointEnableForm.php
+++ b/src/Form/CaptchaPointEnableForm.php
@@ -45,7 +45,9 @@ class CaptchaPointEnableForm extends EntityConfirmFormBase {
   public function submitForm(array &$form, FormStateInterface $form_state) {
     $this->entity->enable();
     $this->entity->save();
-    drupal_set_message($this->t('Captcha point %label has been enabled.', ['%label' => $this->entity->label()]));
+    drupal_set_message($this->t('CAPTCHA Point %label has been enabled.', [
+      '%label' => $this->entity->id(),
+    ]));
     $form_state->setRedirect('captcha_point.list');
   }
 
diff --git a/src/Form/CaptchaPointForm.php b/src/Form/CaptchaPointForm.php
index 132bd8e..7041068 100755
--- a/src/Form/CaptchaPointForm.php
+++ b/src/Form/CaptchaPointForm.php
@@ -2,8 +2,12 @@
 
 namespace Drupal\captcha\Form;
 
+use Drupal\captcha\CaptchaPointInterface;
 use Drupal\Core\Entity\EntityForm;
+use Drupal\Core\Entity\EntityStorageInterface;
 use Drupal\Core\Form\FormStateInterface;
+use Symfony\Component\DependencyInjection\ContainerInterface;
+use Symfony\Component\HttpFoundation\RequestStack;
 
 /**
  * Entity Form to edit CAPTCHA points.
@@ -11,47 +15,75 @@ use Drupal\Core\Form\FormStateInterface;
 class CaptchaPointForm extends EntityForm {
 
   /**
+   * The captcha point entity storage.
+   *
+   * @var \Drupal\Core\Entity\EntityStorageInterface
+   */
+  protected $captchaPointStorage;
+
+  /**
+   * The request object.
+   *
+   * @var \Symfony\Component\HttpFoundation\RequestStack
+   */
+  protected $requestStack;
+
+  /**
+   * Constructs a base class for captcha point add and edit forms.
+   *
+   * @param \Drupal\Core\Entity\EntityStorageInterface $captcha_point_storage
+   *   The captcha point entity storage.
+   * @param \Symfony\Component\HttpFoundation\RequestStack $request_stack
+   *   The request stack object.
+   */
+  public function __construct(EntityStorageInterface $captcha_point_storage, RequestStack $request_stack) {
+    $this->captchaPointStorage = $captcha_point_storage;
+    $this->requestStack = $request_stack;
+  }
+
+  /**
+   * {@inheritdoc}
+   */
+  public static function create(ContainerInterface $container) {
+    return new static(
+      $container->get('entity.manager')->getStorage('captcha_point'),
+      $container->get('request_stack')
+    );
+  }
+
+  /**
    * {@inheritdoc}
    */
   public function form(array $form, FormStateInterface $form_state) {
     $form = parent::form($form, $form_state);
-
     module_load_include('inc', 'captcha', 'captcha.admin');
 
-    /* @var CaptchaPointInterface $captchaPoint */
+    /** @var CaptchaPointInterface $captcha_point */
     $captcha_point = $this->entity;
 
     // Support to set a default form_id through a query argument.
-    $request = \Drupal::request();
+    $request = $this->requestStack->getCurrentRequest();
     if ($captcha_point->isNew() && !$captcha_point->id() && $request->query->has('form_id')) {
       $captcha_point->set('formId', $request->query->get('form_id'));
-      $captcha_point->set('label', $request->query->get('form_id'));
     }
 
-    $form['label'] = [
-      '#type' => 'textfield',
-      '#title' => $this->t('Form ID'),
-      '#default_value' => $captcha_point->label(),
-      '#required' => TRUE,
-    ];
-
     $form['formId'] = [
       '#type' => 'machine_name',
+      '#title' => $this->t('Form ID'),
       '#default_value' => $captcha_point->id(),
       '#machine_name' => [
-        'exists' => 'captcha_point_load',
+        'exists' => [$this->captchaPointStorage, 'load'],
       ],
-      '#disable' => !$captcha_point->isNew(),
       '#required' => TRUE,
+      '#description' => $this->t('Enter form id for existing form.'),
     ];
 
     // Select widget for CAPTCHA type.
     $form['captchaType'] = [
       '#type' => 'select',
-      '#title' => t('Challenge type'),
-      '#description' => t('The CAPTCHA type to use for this form.'),
-      '#default_value' => ($captcha_point->getCaptchaType() ?: $this->config('captcha.settings')
-        ->get('default_challenge')),
+      '#title' => $this->t('Challenge type'),
+      '#description' => $this->t('The CAPTCHA type to use for this form.'),
+      '#default_value' => $captcha_point->getCaptchaType(),
       '#options' => _captcha_available_challenge_types(),
     ];
 
@@ -62,17 +94,17 @@ class CaptchaPointForm extends EntityForm {
    * {@inheritdoc}
    */
   public function save(array $form, FormStateInterface $form_state) {
-    /* @var CaptchaPoint $captcha_point */
+    /** @var CaptchaPointInterface $captcha_point */
     $captcha_point = $this->entity;
     $status = $captcha_point->save();
 
-    if ($status == SAVED_NEW) {
-      drupal_set_message($this->t('Captcha Point for %form_id form was created.', [
+    if ($status === SAVED_NEW) {
+      drupal_set_message($this->t('CAPTCHA Point for %form_id form has been created.', [
         '%form_id' => $captcha_point->getFormId(),
       ]));
     }
     else {
-      drupal_set_message($this->t('Captcha Point for %form_id form was updated.', [
+      drupal_set_message($this->t('CAPTCHA Point for %form_id form has been updated.', [
         '%form_id' => $captcha_point->getFormId(),
       ]));
     }
diff --git a/src/Tests/CaptchaAdminTestCase.php b/src/Tests/CaptchaAdminTestCase.php
index b2dbe51..9e2707f 100755
--- a/src/Tests/CaptchaAdminTestCase.php
+++ b/src/Tests/CaptchaAdminTestCase.php
@@ -179,8 +179,9 @@ class CaptchaAdminTestCase extends CaptchaBaseWebTestCase {
 
     // Check if CAPTCHA was successfully disabled
     // (on CAPTCHA admin links fieldset).
-    $this->assertRaw(t('Captcha point %form_id has been disabled.', ['%form_id' => self::COMMENT_FORM_ID]),
-      'Disable challenge through the CAPTCHA admin links', 'CAPTCHA');
+    $this->assertRaw(t('CAPTCHA Point %form_id has been disabled.', [
+      '%form_id' => self::COMMENT_FORM_ID,
+    ]), 'Disable challenge through the CAPTCHA admin links', 'CAPTCHA');
   }
 
   /**
@@ -281,50 +282,63 @@ class CaptchaAdminTestCase extends CaptchaBaseWebTestCase {
 
     // Log in as admin.
     $this->drupalLogin($this->adminUser);
-    $label = 'TEST';
 
     // Try and set CAPTCHA point without the #required label. Should fail.
     $form_values = [
       'formId' => $captcha_point_form_id,
       'captchaType' => $captcha_point_module . '/' . $captcha_point_type,
     ];
+    // Set CAPTCHA point through admin/config/people/captcha/captcha-points.
     $this->drupalPostForm(self::CAPTCHA_ADMIN_PATH . '/captcha-points/add', $form_values, t('Save'));
-    $this->assertText(t('Form ID field is required.'));
-
-    // Set CAPTCHA point through admin/user/captcha/captcha/captcha_point.
-    $form_values['label'] = $label;
-    $this->drupalPostForm(self::CAPTCHA_ADMIN_PATH . '/captcha-points/add', $form_values, t('Save'));
-    $this->assertRaw(t('Captcha Point for %label form was created.', ['%label' => $captcha_point_form_id]));
+    $this->assertRaw(t('CAPTCHA Point for %label form has been created.', [
+      '%label' => $captcha_point_form_id,
+    ]));
 
     // Check in database.
     /* @var CaptchaPoint result */
     $result = $this->getCaptchaPointSettingFromDatabase($captcha_point_form_id);
-    $this->assertEqual($result->captchaType, $captcha_point_module . '/' . $captcha_point_type,
-      'Enabled CAPTCHA point should have module and type set');
+    $this->assertEqual($result->captchaType, $captcha_point_module . '/' . $captcha_point_type, 'Enabled CAPTCHA point should have module and type set');
 
-    // Disable CAPTCHA point again.
+    // Disable CAPTCHA point.
     $this->drupalPostForm(self::CAPTCHA_ADMIN_PATH . '/captcha-points/' . $captcha_point_form_id . '/disable', [], t('Disable'));
-    $this->assertRaw(t('Captcha point %label has been disabled.', ['%label' => $label]), 'Disabling of CAPTCHA point');
+    $this->assertRaw(t('CAPTCHA Point %label has been disabled.', [
+      '%label' => $captcha_point_form_id,
+    ]), 'Disabling of CAPTCHA point');
+
+    // Check in database.
+    /* @var CaptchaPoint result */
+    $result = $this->getCaptchaPointSettingFromDatabase($captcha_point_form_id);
+    $this->assertEqual($result->status(), FALSE, 'Disabled CAPTCHA point');
+
+    // Enable CAPTCHA point.
+    $this->drupalPostForm(self::CAPTCHA_ADMIN_PATH . '/captcha-points/' . $captcha_point_form_id . '/enable', [], t('Enable'));
+    $this->assertRaw(t('CAPTCHA Point %label has been enabled.', [
+      '%label' => $captcha_point_form_id,
+    ]), 'Enabling of CAPTCHA point');
 
     // Check in database.
+    /* @var CaptchaPoint result */
     $result = $this->getCaptchaPointSettingFromDatabase($captcha_point_form_id);
+    $this->assertEqual($result->status(), TRUE, 'Enabled CAPTCHA point');
 
     // Set CAPTCHA point via admin/user/captcha/captcha/captcha_point/$form_id.
     $form_values = [
       'captchaType' => $captcha_point_module . '/' . $captcha_point_type,
     ];
     $this->drupalPostForm(self::CAPTCHA_ADMIN_PATH . '/captcha-points/' . $captcha_point_form_id, $form_values, t('Save'));
-    $this->assertRaw(t('Captcha Point for %form_id form was updated.', ['%form_id' => $captcha_point_form_id]), 'Saving of CAPTCHA point settings');
+    $this->assertRaw(t('CAPTCHA Point for %form_id form has been updated.', [
+      '%form_id' => $captcha_point_form_id,
+    ]), 'Saving of CAPTCHA point settings');
 
     // Check in database.
     $result = $this->getCaptchaPointSettingFromDatabase($captcha_point_form_id);
-    $this->assertEqual($result->captchaType, $captcha_point_module . '/' . $captcha_point_type,
-      'Enabled CAPTCHA point should have module and type set');
+    $this->assertEqual($result->captchaType, $captcha_point_module . '/' . $captcha_point_type, 'Enabled CAPTCHA point should have module and type set');
 
     // Delete CAPTCHA point.
     $this->drupalPostForm(self::CAPTCHA_ADMIN_PATH . '/captcha-points/' . $captcha_point_form_id . '/delete', [], t('Delete'));
-    $this->assertRaw(t('Captcha point %label has been deleted.', ['%label' => $label]),
-      'Deleting of CAPTCHA point');
+    $this->assertRaw(t('CAPTCHA Point %label has been deleted.', [
+      '%label' => $captcha_point_form_id,
+    ]), 'Deleting of CAPTCHA point');
 
     $result = $this->getCaptchaPointSettingFromDatabase($captcha_point_form_id);
     $this->assertFalse($result, 'Deleted CAPTCHA point should be in database');
@@ -338,17 +352,17 @@ class CaptchaAdminTestCase extends CaptchaBaseWebTestCase {
     $captcha_point_form_id = 'form_' . strtolower($this->randomMachineName(32));
     $captcha_point_module = 'captcha';
     $captcha_point_type = 'Math';
-    $label = 'TEST_2';
 
     $this->drupalLogin($this->adminUser);
 
     $form_values = [
-      'label' => $label,
       'formId' => $captcha_point_form_id,
       'captchaType' => $captcha_point_module . '/' . $captcha_point_type,
     ];
-    $this->drupalPostForm(self::CAPTCHA_ADMIN_PATH . '/captcha-points/add', $form_values, 'Save');
-    $this->assertRaw(t('Captcha Point for %form_id form was created.', ['%form_id' => $captcha_point_form_id]));
+    $this->drupalPostForm(self::CAPTCHA_ADMIN_PATH . '/captcha-points/add', $form_values, t('Save'));
+    $this->assertRaw(t('CAPTCHA Point for %form_id form has been created.', [
+      '%form_id' => $captcha_point_form_id
+    ]));
 
     // Switch from admin to non-admin.
     $this->drupalLogin($this->normalUser);
@@ -377,8 +391,10 @@ class CaptchaAdminTestCase extends CaptchaBaseWebTestCase {
     $this->assertEqual($result->captchaType, $captcha_point_module . '/' . $captcha_point_type, 'Enabled CAPTCHA point should have module and type set');
 
     // Delete captcha point.
-    $this->drupalPostForm(self::CAPTCHA_ADMIN_PATH . '/captcha-points/' . $captcha_point_form_id . '/delete', [], 'Delete');
-    $this->assertRaw(t('Captcha point %label has been deleted.', ['%label' => $label]), 'Disabling of CAPTCHA point');
+    $this->drupalPostForm(self::CAPTCHA_ADMIN_PATH . '/captcha-points/' . $captcha_point_form_id . '/delete', [], t('Delete'));
+    $this->assertRaw(t('CAPTCHA Point %label has been deleted.', [
+      '%label' => $captcha_point_form_id
+    ]), 'Deleting of CAPTCHA point');
   }
 
 }
