Sürekli bir tarayıcı örneğine eklemeye çalışırken sürekli bir bütünleştirme oluşturma işleminin parçası olarak çalışan bir WatiN adımı başarısız oluyor. Şu anda yaklaşık 5 kez.Browser.AttachTo <T>() aralıklı istisna neden olur "Internet Explorer meşgulken zaman aşımı"
yani: Ben önceki yazılar önerilmiştir tüm bariz şeyler yaptık
WatiN.Core.Exceptions.TimeoutException: Timeout while Internet Explorer busy
at WatiN.Core.UtilityClasses.TryFuncUntilTimeOut.ThrowTimeOutException(Exception lastException, String message)
at WatiN.Core.UtilityClasses.TryFuncUntilTimeOut.HandleTimeOut()
at WatiN.Core.UtilityClasses.TryFuncUntilTimeOut.Try[T](DoFunc`1 func)
at WatiN.Core.WaitForCompleteBase.WaitUntil(DoFunc`1 waitWhile, BuildTimeOutExceptionMessage exceptionMessage)
at WatiN.Core.Native.InternetExplorer.IEWaitForComplete.WaitUntilNotNull(DoFunc`1 func, BuildTimeOutExceptionMessage exceptionMessage)
at WatiN.Core.Native.InternetExplorer.IEWaitForComplete.WaitWhileIEBusy(IWebBrowser2 ie)
at WatiN.Core.Native.InternetExplorer.IEWaitForComplete.WaitForCompleteOrTimeout()
at WatiN.Core.WaitForCompleteBase.DoWait()
at WatiN.Core.Native.InternetExplorer.AttachToIeHelper.FinishInitializationAndWaitForComplete(IE ie, SimpleTimer timer, Boolean waitForComplete)
at WatiN.Core.Native.InternetExplorer.AttachToIeHelper.Find(Constraint findBy, Int32 timeout, Boolean waitForComplete)
at WatiN.Core.Browser.AttachTo[T](Constraint constraint)
: Aşağıdaki hata ile
Browser.AttachTo<IE>(Find.ByTitle("Title of Popup"));
Process.GetProcessesByName("IEXPLORE").ToList().ForEach(p => p.Kill());
herhangi watin adımlarını çalıştırmadan önce zaman aşımı arttırın: Bir watin adımını çalıştırmadan önce tüm internet explorer süreçlerini öldür
Her watin adım Aşağıdaki kod bloğunda bir eylem olarak geçirilenvar timeout = 60;
Settings.AttachToBrowserTimeOut = timeout;
Settings.WaitForCompleteTimeOut = timeout;
Settings.WaitUntilExistsTimeOut = timeout;
:
public void UseAndCloseBrowser(Action<Browser> action, Browser browser)
{
try
{
action(browser);
browser.WaitForComplete();
}
finally
{
Log(Level.Info, "Attempting to close browser {0}", browser.Title);
browser.Close();
browser.Dispose();
}
}
Yapabileceğim başka bir şey bilen var mı/bu sinir bozucu hata iletisinin sonuna ulaşmak için işaretleyin?
bağlam watin ne çalışıyor? Örneğin bir CruiseControl.NET Windows hizmetinde çalışıyor mu? Windows hizmetleri penceresiz uygulamalar olduğu için WatiN ile Windows hizmetleri içinden çalışan birçok sorun yaşadım. – NathanAldenSr
Merhaba, üzgünüm ben bu ajan bir windows servisi ve kullanıcı adımı kullanarak çalışan var .. size geri er alamadım. Yani her şey aralıklı başarısız dediğim gibi, hangi takmak dışında çalışır vb internet explorer tam erişime sahiptir. – CraftyFella