We want to automate some tests against our Silverlight application. Trying out the „Test Studio“, I managed to record a Login action, but the recoded Steps just don’t get replayed. At playback, the IE starts up and then stays at “about:blank“ till the timeout. In the log file, I saw the following error messages:
Overall Result: Fail
------------------------------------------------------------
'14.09.2011 20:23:06' - Starting execution....
'14.09.2011 20:23:06' - Detected a Silverlight Test. Setting EnableSilverlight=True
------------------------------------------------------------
'14.09.2011 20:23:42' - 'Fail' : 1. Click LoginButton
------------------------------------------------------------
Failure Information:
~~~~~~~~~~~~~~~
Unable to find the target host (Browser/SilverlightApp) to locate an element. Failure: Unable to find the Silverlight plugin on the following page:'about:blank' using the following expression:'[id 'Exact' silverlightControlHost] AND [tagname 'Exact' div][tagname 'Exact' object]'. Exception: System.TimeoutException: Wait for condition has timed out
at ArtOfTest.Common.WaitSync.CheckResult(WaitSync wait, String extraExceptionInfo)
at ArtOfTest.Common.WaitSync.For[T,V](Func`3 func, T target, V custom, Boolean invertCondition, Int32 timeout)
at ArtOfTest.WebAii.Synchronization.Wait.ForCondition(Func`3 condition, Boolean invertCondition, Object custom, Int32 timeout)
at ArtOfTest.WebAii.Synchronization.Wait.ForExists(Int32 timeout, Boolean refreshElement)
at ArtOfTest.WebAii.Design.Execution.ExecutionUtils.GetHost(IAutomationHost topBrowser, ElementDescriptor element, Int32 hostFindTimeout, Int32 appConnectTimeout, Boolean cachedSLAppOnly, String& error)
I read some other threads of the similar problem; the suggested solution would be to, turn-off the IE’s “Protected Mode“ using the checkbox on the Security tab of IE. Unfortunately, my PC is running with Windows XP and IE8., there is no such checkbox for IE8 on Windows XP. Protected Mode is only available on Windows Vista because it is based on security features new to Windows Vista.
I can’t upgrade my PC to Vista. So I wonder if there is other way to overcome this problem. Any idea would be appreciated.
My method is:
[CodedStep(@"Click 'ContentPlaceHolder1RgPRgRBtnRunButton'")] public void getClientReports_CodedStep1() { List<HtmlTableRow> advancedReports = new List<HtmlTableRow>(); List<HtmlTableRow> classicReports = new List<HtmlTableRow>(); ReadOnlyCollection<HtmlInputButton> expandButtons = Pages.TargetPage.Find.AllByAttributes<HtmlInputButton>("class=rgExpand"); foreach (HtmlInputButton expandBtn in expandButtons) { expandBtn.Click(false); } ReadOnlyCollection<HtmlTableRow> reportRow = Pages.VergeSolutionsLLC86.Find.AllByXPath<HtmlTableRow>("//table[@class='rgMasterTable']/tbody/tr[contains(@id,'ContentPlaceHolder1')]"); system = Pages.TargetPage.Find.ById("ctl00_ucHeader_lblSystem").InnerText; org = Pages.TargetPage.Find.ById("ctl00_ucHeader_l_hco").InnerText; foreach(HtmlTableRow row in reportRow) { ReadOnlyCollection<HtmlTableCell> cells = row.Find.AllByTagName<HtmlTableCell>("td"); if (cells.Count > 5) { if (cells[5].InnerText == "Advanced") { reportName = cells[1].InnerText; HtmlInputButton btnRun = cells[6].Find.AllByTagName<HtmlInputButton>("input")[0]; btnRun.Click(false); System.Threading.Thread.Sleep(5000); Manager.ActiveBrowser.Window.Maximize(); Manager.Log.CaptureBrowser(Manager.ActiveBrowser, system + "." + org + "." + reportName); Manager.Browsers[1].Close(); } if (cells[5].InnerText == "Classic") { reportName = cells[1].InnerText; HtmlAnchor btnRun = cells[6].Find.ByContent<HtmlAnchor>("Run"); btnRun.Click(); System.Threading.Thread.Sleep(5000); Manager.ActiveBrowser.Window.Maximize(); Manager.Log.CaptureBrowser(Manager.ActiveBrowser, system + "." + org + "." + reportName); Manager.Browsers[1].Close(); } } } }I want to capture all report outputs as images. This runs fine the first time through. The second time this runs, I get the error: "A generic error occurred in GDI+". The folder to which I am writing has write permissions (it wrote the file the first time through).
Any help with this error would be most helpful.
Thanks.
Hi,
I have an scenario to set cell value on a data grid by using with OnKeypress event. It is working and I can able to set value to the first selected row cell, but I couldn’t able to set the value to next selected row cell. It is always trying to set the value to first selected row cell instead of set value to next selected row cell.
I have noticed the first row cell is still selected even though I have select the next row cell. My issue, I don’t know how to clear onkeypress event from first row cell after set value.
Please help me in resolving this problem. I am looking for a C# code example.
Waiting for your reply.
Thanks
Ganga S