Вопрос некорректный, если не сказать грубее (а очень хочется
).
- Почему поле не может повторяться? Что вносит ограничения?
- Каков сценарий работы тестируемой программы?
- Какие модули (опишите “крупноузовО”) работают и как?
Если читать этот бурный поток нечётких мыслей, то понять можно, что вы вводите какой-то e-mail на web-странице и пытаетесь его засабмитить куда-то, причём ваша задача - проверить, что JavaScript на странице или принимающий сервер провалидируют введённое значение и выведут ошибку, если e-mail неправильный.
Если так, то непонятно, почему не могут повторяться имейлы? Первая версия в ответ на мой же собственный вопрос - это то, как идёт обработка, что, например, у вас реализовано так, что сначала введённое сравнивается с наличествующим в БД и потом - проверяется на корректность.
Если моя версия верна, то это - баг, неправильный алгоритм работы. Сначала должна быть валидация корректности имейла и лишь затем - поиск копий в БД (и, соответственно, вывод ошибки о попытке ввести уже существующий имейл).
Если же предположить, что есть тестовый e-mail, например, собственный (Beliy_Ruslan_aka_Vasya_Pupkin@domen.com
) и на этот имейл должны приходить письма с подтверждением регистрации и если в системе, которую вы используете, есть web-доступ, то можно автоматить просто - засылать самому себе на этот ящик письма, только вот между именем и знаком “эт” ставить плюс и цифры с буквами, т.к. мелкософтовый почтовый сервер отбрасывает сам плюс и всё, что до знака “@
”, тем не менее, почту пропускает.
Тут, смотрю, принято выкладывать код, даже самый простой, посему - вариант изменения кода от @Beliy_Ruslan, ему просто надо чуть-чуть исправить его цикл for в методе randomString( int len ):
//чуть выше, рядом с *static Random rnd = new Random();* заданы:
//String testEmailBeginning = "Beliy_Ruslan_aka_Vasya_Pupkin";
//String testEmailEnd = "@domen.com";
//чуть выше, рядом с *static Random rnd = new Random();* заданы:
//String testEmailBeginning = "Beliy_Ruslan_aka_Vasya_Pupkin";
//String testEmailEnd = "@domen.com";
for (int i = 0; i < len; i++) {
StringBuilder sb2 = sb.append(AB.charAt(rnd.nextInt(AB.length())));
String resultString = testEmailBeginning + "+" + sb2 + testEmailEnd;
if (i == len - 1) {
System.out.println("Yes, we finally found the decision for Beliy_Ruslan!");
System.out.println("His decision at the moment looks like: " + resultString);
}
NB: Этот вариант {если его специально не залочили админы} использовать точно можно на Outlook-e (на Microsoft Exchange “завязанном”) и его web-морде OWA, у меня работало “на ура”, засылал письмишки на имейл (в тему которых запихивал и рандомную стрингу типа этой sb2, открывал OWA, в нём искал имейлы с темой, в которой есть sb2.toString() , если есть, то писал в лог, что пользователь получил имейл о регистрации.