When initiating a 'Record' on a web test in Test Studio, the relevant browser (Edge Chromium, but Firefox and Chrome have been tried) is launched and URL navigated to, but only a single step is recorded:
Navigate to : '/'
We are attempting to record regression tests against a custom web app. Steps are recorded fine if navigating to (for example) google.com and typing in a search query.
Please let me know what further information I can provide to narrow this down.
I noticed that in the recurring scheduled test the settings do not persist if we select " Only on error..." .
It defaults back to "Always". I would expect it to remember the original setting.
Details for the application shared internally!
Elements that are visible on the page cannot be directly located in the DOM. Even if find expressions are manually adjusted to match the correct elements, the steps fail to execute as expected because the elements are considered not visible.
Additional details shared internally!!!
A workaround is to manually refresh the DOM tree so that it gets updated to the current state of the page.
During a recording session the refresh DOM option is available in the Advanced Recording Tools window -> DOM Explorer tab -> Toolbar options -> Refresh button.
During test execution the refresh DOM option is available in a coded step - Manager.ActiveBrowser.RefreshDomTree();
While researching the case we also noticed that after some delay the DOM tree is refreshed automatically, so a delay step is also an option to be tried.
1. Edit a Test
2. Test shows * for pending changes
3. Can't find a ribbon button for saving the changes -> I can only use [CTRL]+[S]
Maybe you can add the button in the section "Edit" or as seperate big button before the "Edit" section?
A click step might throw ArgumentNullException when executed against a pop up that is in the process of being opened.
Details:
Exception 'System.ArgumentNullException: Value cannot be null.
Parameter name: source1. Record a test with elements that weren't in the repository
2. Move the element via Drag & Drop into an if-else case
3. Rename element in the TreeView on the left hand side
Normally the element name gets refreshed in the project and shows the correct name.
In an if-else case the name won't be refreshed.
Screenshot:
1. start recording
2. enable hover over highlighting
3. switch window with [ALT]+[TAB]
After switching from WPF-Window into Telerik Teststudio the hover over highlighting is still active
Steps to reproduce:
1. Add the following line in coded step
ActiveBrowser.Desktop.KeyBoard.KeyPress(System.Windows.Forms.Keys.Alt);
2. Execute the test in extensionless/headless mode
Expected: Test should pass
Actual: Test fails and the following error is thrown in the log:
ArtOfTest.WebAii.Exceptions.ExecuteCommandException: ExecuteCommand failed!
InError set by the client. Client Error:
Protocol error (Input.dispatchKeyEvent): Invalid 'text' parameter
BrowserCommand (Type:'Action',Info:'NotSet',Action:'RealKeyboardAction',Target:'null',Data:'keyDown#$TS$#LMenu',ClientId:'59E9D6A07CE0CD30467ED59AEC375281',HasFrames:'False',FramesInfo:'',TargetFrameIndex:'-1',InError:'True',Response:'Protocol error (Input.dispatchKeyEvent): Invalid 'text' parameter')
InnerException: none.
at ArtOfTest.WebAii.Core.Browser.ExecuteCommandInternal(BrowserCommand request)
at ArtOfTest.WebAii.Core.Browser.ExecuteCommand(BrowserCommand request, Boolean performDomRefresh, Boolean waitUntilReady)
at ArtOfTest.WebAii.Headless.HeadlessKeyboard.PressOrReleaseKey(Keys key, Boolean release)
at ArtOfTest.WebAii.Win32.KeyBoard.KeyDown(Keys code, Boolean delay)
at ArtOfTest.WebAii.Win32.KeyBoard.KeyPress(Keys code)
at Regressuib2024R2.Alt.Alt_CodedStep() in C:\Users\ittodorov\Documents\Test Studio Projects\Regressuib2024R2\Alt.tstest.cs:line 57
Using the default Startup Args when configuring WPF test are not applied correctly.
The workaround is to use the startup arguments set for each test configuration.
For a specific page (shared internally)
1.Record a navigate step
2. Execute the recorded test in headless/extensionless
Expected: The test should pass
Actual: The navigate step fails and the following exception is thrown in the log:
Failure Information: ~~~~~~~~~~~~~~~ ExecuteCommand failed! BrowserCommand (Type:'Information',Info:'IsReady',Action:'NotSet',Target:'null',Data:'',ClientId:'8DBC801FE56B61C67C029E52C7448B0C',HasFrames:'False',FramesInfo:'',TargetFrameIndex:'-1',InError:'False',Response:'') InnerException: System.TimeoutException: Timed out waiting for command to be handled at ArtOfTest.WebAii.Messaging.Process.BrowserHostsProxyRemoted.ProcessBrowserRequest(BrowserCommand command, String requestId, Int32 timeout) at ArtOfTest.WebAii.Messaging.Process.BrowserHostsProxyRemoted.ProcessBrowserRequest(BrowserCommand command, String requestId) at ArtOfTest.WebAii.Core.Browser.ExecuteCommandInternal(BrowserCommand request)
Workaround: Use a coded step to increase the ExecuteCommandTimeout like this:
Manager.Settings.ExecuteCommandTimeout=120000;
There is a dialogbox in WPF app to which the recorder toolbar gets attached. When the highlighting is enabled for this window no of the elements get highlighted.
The workaround is to use the DOM explorer tab in the Advanced Recording Tools to locate the desired element and build the desired step that way.
Details for the dialogbox and app shared internally!
We've posted about this before, tickets and forum.
https://www.telerik.com/account/support-center/view-ticket/1621768
Attached is the log of a different failed scenario. Unlike ticket 1621768, there is no execution delay (hardcoded) before the error. To be sure, we get what seems to be random failed tests that run successful more often than not in most prior runs. What seems constant is that our test lists will encounter errors in an automated Azure pipeline run (if we then run that same pipeline manually, it's usually successful).
Is there something we can do to the environment that we are running the test lists, the settings or something of that nature? Maybe some way to "prime" the environment?
Note, our license is under bwhite@mlhc.com
Error upon compilation is related to the Pages.g.cs file where all elements are listed with their find expression.
12:38:44 'ERROR' > C:\Users\dpruteanu\Test Studio Projects\After_reinstall_3-27-24\Pages.g.cs(229,108) : error CS1003: Syntax error, ',' expected
Steps to reproduce:
Expected: The compilation is successful.
Actual: The compilation fails with the mentioned error.
Although the actual image files are with good resolution and are smooth, when displayed in the Failure Details Images tab they are blurry.
It will be great to display the images better.
public static DesktopFind WaitForDesktopAppWindow(DesktopApplication desktopApp, string strWindowsName)
{
return desktopApp.WaitForWindow(strWindowsName, delay, 60000).Find; //with a delay of 700
}
fails if COMException is thrown.
Expected is to handle that exception and wait for the set timeout.
When generating chained find expressions Test Studio always uses the id tribute for the parent element and it doesn't take into account the actual order of attributes.
Then, if you completely remove the id from the find logic list settings, the generated find expression uses only TagIndex for the target element and no chained find expression.
Generating this type of expressions need to be revised.
Example shared internally!
Download dialog which is triggered from a new tab fails to be handled when running a test in Edge and Chrome extensionless mode.
Such download dialog is usually triggered with a link similar to this:
<a href="100MB.zip" target="_blank">Link to donwload</a>
The download dialog looks like this: