<p>QA tester was reading HTML/JS code to write a functional test of a web form, and saw:</p>

<pre><code>if (form_field == empty)
{
...do stuff for empty field
}
else if (form_field != empty)
{
...do stuff for non-empty field
}
else
{
...do stuff that will never be done
}
</code></pre>

<p>After a couple embarrassing attempts, tester realized that they couldn't trigger the alert strings hidden in the third block.</p>

<p>Things I'm wondering are if this Is this problem more or less language specific (can non-JS people learn lessons here?) and are there legitimate reasons code ended up this way?</p>

<p>How can I find/address the problem?</p>

I don't believe that this problem is at all language specific.  You could construct similar (flawed) conditional statements in a wide variety of other languages.
Also, I don't think that there is a legitimate reason for the conditional statement to be structured this way.  As you state in the comment, the statements in the third block will just never be done.
You could probably find mistakes like this most effectively with code review.  However, since that requires quite a bit of time from at least one developer, you may be better served by developing quality unit tests and inspecting code coverage.  In this case, you probably would have noticed that the third portion of the conditional statement was never used.