#c# #testing #c#-4.0 #c#-3.0 #watin
#c# #тестирование #c #-4.0 #c #-3.0 #watin
Вопрос:
Мне нужно клонировать экземпляр браузера, в watin IE является общим ресурсом, что очень затрудняет сохранение предыдущего экземпляра браузера
var browser = new IE(http://www.stackoverflow.com);
var copybrowser = browser;
browser.goto("http://www.superuser.com");
console.WriteLine(browser.Uri);
console.WriteLine(copybrowser.Uri);
output:
http://www.superuser.com
http://www.superuser.com
В этом случае мне нужно сохранить предыдущий экземпляр, я видел метод clone в watin, но я не смог вспомнить, кто-нибудь знает, как решить эту проблему, мне нужно получить предыдущий экземпляр браузера
Комментарии:
1. В вашем случае
copybrowser
это только ссылка на тот же объект,browser
на который указывает, поэтому они, очевидно, одинаковы. Я даже не уверен, что возможно создать клон существующего экземпляра браузера в WatiN, потому что, когда вы это сделаетеnew IE(...)
, будет запущен совершенно новый экземпляр, и было бы довольно сложно «скопировать» все состояние вашего существующего экземпляра браузера (возможно, вы где-то перешли, заполнилиотсутствует множество полей формы и т. Д.). Но что еще интереснее: почему вы хотите это сделать? Это больше похоже на то, что вы, возможно, пытаетесь решить проблему неправильным способом…2. может быть, я делаю это неправильно… но мне действительно нужна эта методология… даже сейчас я не нашел ни одного правильного подхода…..
3. Когда вы говорите «но мне действительно нужна эта методология» , вы должны объяснить нам, почему . Как я уже сказал, похоже, что вы, возможно, пытаетесь решить проблему неправильным способом (или даже неправильной проблемой): если вы объясните, что вы пытаетесь сделать, возможно, кто-нибудь сможет предложить вам альтернативный подход.
Ответ №1:
Просто создайте класс со свойством браузера
public class Session
{
public Browser browser { get; set; }
...
...
}
В этом случае вы можете создать несколько экземпляров сеанса, когда у каждого экземпляра есть свой экземпляр браузера.
Комментарии:
1. может быть, мне нужно провести дополнительные исследования по вышеуказанному методу … я попробую… и дайте вам знать