What is CAPTCHA?

CAPTCHA is an acronym that stands for “Completely Automated Public Turing test to tell Computers and Humans Apart.”  


By definition, resolving a CAPTCHA cannot be automated: Otherwise, it could not tell computers and humans apart and hence fails to be a CAPTCHA. It is basically a computer program built to distinguish between the human and machine to prevent any type of spam or data extraction from websites. The entire concept of CAPTCHA is based on the assumption that only a human would pass this test and bot or automated scripts would fail.


How and where CAPTCHA is used?

  1. Spam: The main advantage of CAPTCHAs is to help limit spam, especially from automated programs that send email, submit web forms such as forums, and create online accounts.

  2. Implementation: CAPTCHAs are also very easy to implement or add to an existing website. Thus making CAPTCHAs ideal for software developers to use.


How to deal with CAPTCHA?

The following workaround can be implemented in order to deal with captcha:

  1. Asking the  dev team for a workaround, like configure CAPTCHA in test environment in such a way it will always accept 1 specific value.

  2. Ask developer to disable the CAPTCHA module in testing environment.

  3. If your are using custom CAPTCHA module, you can ask developer to generate an API of CAPTCHA generation for testing environment.

  4. You can ask dev team to add CAPTCHA code as title in markup, then you can access this title and bypass the CAPTCHA, but only in the testing environment.

Source: Stackexchange