如何准备电子邮件验证测试用例?

时间:2010-07-12 09:21:39

标签: java regex

HI,

我正在编写一个java程序来验证电子邮件地址。此程序使用Pattern类根据Regex模式验证输入字符串。我已经为电子邮件验证采购了Regex Pattern,我的程序已成功运行。

现在,我在我的数据库中看到了一些错误的电子邮件地址(电子邮件删除失败了这些地址。)因此,我决定准备一个测试用例,该测试用例将对一小撮电子邮件地址列表进行验证。我希望此列表包含有效电子邮件地址和无效电子邮件地址的所有可能情况。

我想知道是否有人之前准备了电子邮件验证测试用例?如果是这样请指导我准备好这个测试用例?

此致 VSD

4 个答案:

答案 0 :(得分:1)

This article包含一些覆盖有效地址的正则表达式。

但是没有测试用例。在你的情况下,我建议尝试通常的方法:取几个(2-3)有效和无效的地址并测试。如果您发现您的代码接受非法地址或拒绝有效地址,请延长测试时间。

答案 1 :(得分:1)

Dominic Sayers已经从Cal Henderson,Dave Child,Phil Haack,Doug Lovell,RFC 5322和RFC 3696,所有中的222个测试地址收集了测试用例(参见this previous answer)。

他的内容可以在他的博客RFC-compliant email address validatorresults and analysis)中找到。

请记住,没有使用正则表达式的完美解决方案,语法太复杂了。

另见

答案 2 :(得分:0)

此网站http://www.ex-parrot.com/pdw/Mail-RFC822-Address.html可能会为您提供一些帮助。但验证电子邮件的唯一方法是尝试发送电子邮件。

答案 3 :(得分:0)

这听起来很像电子邮件的格式正确但实际上并未注册。如果没有实际通过电子邮件发送这些地址,就无法检查。

问题是电子邮件没有正确形成(例如asdf @ foo)还是他们不是注册帐户(电子邮件被邮件服务器退回或忽略)?