Попробуй получить для WatiN ссылки / браузеры - PullRequest
4 голосов
/ 07 декабря 2011

Я недавно начал тестировать и использовать WatiN, и я столкнулся с некоторыми проблемами / ошибками, которые я действительно не могу решить.

Сначала я опишу, что я делаю со своими тестами .. Я 'Я пойду и получу все ссылки в определенном div в списке ... так что у меня есть списки ссылок ... которые я собираюсь пройти через ... В цикле я собираюсь использовать функцию link.clicknowait (), чтобы открытьэта ссылка (она открывается в новой вкладке, т. е.). Затем я сплю поток на несколько секунд и закрываю этот браузер, прикрепляя эту ссылку (URL) к новому браузеру, и после этого браузер закрывается, так как я использую его всегда соператор using (..).

Итак, первая проблема заключается в том, что когда браузер получает все ссылки и начинает щелкать по ним, одна из ссылок может привести не к той странице, что означает, что она может привести кстраница, которая говорит, что страница больше не существует, поэтому после этого я больше не могу закрывать эту страницу ... как решить эту проблему и атаковать, т.е. на эту несуществующую страницу?У него нет фиксированного URL-адреса ... что-нибудь, что вы можете порекомендовать?

Есть ли метод, похожий на "Попробуйте присоединиться к ....", потому что иначе я получаю ошибку, если он пытается атаковать браузер нассылка, которая не существует.

Кроме того, есть ли возможность проверить, является ли ссылка в списке ссылок по-прежнему правильной, потому что у меня также несколько раз было исключение, что она не могла нажать на эту ссылку, потому что она была пустой встраница ... Или я могу проверить что-то вроде link.trytoclick () и если ошибка и просто игнорирует эту ссылку и идет дальше ???

И последний вопрос после нажатия на множество ссылок и открытия и закрытиябраузер я получил сообщение об ошибке исключения из памяти ... как это может быть, я использовал 'использование заявления', которое всегда закрывало браузер, когда его не было ...

Заранее спасибо за помощь.

1 Ответ

1 голос
/ 11 декабря 2011

Вы можете использовать href, чтобы открыть ссылку в том же окне вашего сеанса просмотра, после проверки ссылки вы можете вернуться на исходную страницу.

Что-то вроде этого:

string href = browser.Link("link_id").GetAttributeValue("href"); //or your link from the collection
browser.GoTo(href);
//Perform you check
browser.Back();

Чтобы проверить, существует ли ссылка, используйте:

  session.browser.Back();
...