Hi Team,
Our test application use java script navigator.clipboard.writetext to copy content into clipboard, when we run cases with telerik 2024, some scenario pops error "fail to copy", the exception for java script is "NotAllowedError: Failed to execute 'writeText' on 'Clipboard': Write permission denied.".
After check, we can see it's because clipboard-write is denied when telerik open browser, but if we manually open the browser, it's fine. Only failed for browser which is opened by telerik.
You can use below example code to check in browsers which is opened by telerik.
test code:
// Initialize the settings
mySettings = new Settings();
// Set the default browser
mySettings.Web.DefaultBrowser = BrowserType.Chrome; // we can change the two lines for different scenario test
mySettings.Web.UseBrowserExtension = false;
myManager = new Manager(mySettings);
// Start the manager
myManager.Start();
// Launch a new browser instance. [This will launch an IE instance given the setting above]
myManager.LaunchNewBrowser();
myManager.ActiveBrowser.NavigateTo("https://www.telerik.com");
when the browser is opened, you can execute below script in develop tools.
await navigator.permissions.query({
name: 'clipboard-write',
});
Below is what I have summary for telerik 2024 and 2022, please help to confirm if all the the denied scenarios are expected.
Thanks,
Jun
After installing .NET SDK 9.0.100-rc.1 Download .NET 9.0 (Linux, macOS, and Windows) (microsoft.com) from microsoft.com the recorded steps can't be excecuted with Telerik Teststudio.
The application starts as usual after that the test is stuck and doesn't excecute any step after that. With .NET 8.0.10 the tests are running without any problems.
Steps to reproduce:
ActiveBrowser.Desktop.KeyBoard.KeyPress(Keys.Shift | Keys.End); ActiveBrowser.Desktop.KeyBoard.KeyPress(Keys.Shift | Keys.Home);
Expected: The combination selects the text in the field
Actual: The cursor only moves without selecting the text.
Workaround: Use the key combination Shift+A to select the text.
Steps to reproduce:
Expected: The code is compiled and executed as expected.
Actual: The converted code produces compilation error:
[ Compiler ] 15:57:58 'ERROR' > C:\TestProject1\WPFTest.tstest.cs(55,104) : error CS1061: 'FrameworkElement' does not contain a definition for 'SelectTime' and no accessible extension method 'SelectTime' accepting a first argument of type 'FrameworkElement' could be found (are you missing a using directive or an assembly reference?) 15:57:58 'INFO' > Build Failed
Workaround: Cast the element like this:
Applications.WPF_Demosexe.Telerik_UI_for_WPF_Desktop_Examples.PARTClockDatetimepickerclock.CastAs<Telerik.WebAii.Controls.Xaml.Wpf.DateTimePickerClock>().SelectTime("1:00 PM");
Steps to reproduce:
Expected: The test results to be displayed.
Actual: The view is empty with the message: "There are no test results for this run."
Workaround: Split each test into a separate test list.
Log on the machine where the Executive Dashboard is hosted shows below error.
Telerik.TestStudio.ResultsServer.exe(7192:313),Error] CloudStorageRepository`2.ExtractItemsFromResponseAsync() : Error getting entity: Telerik.TestStudio.Interfaces.Storage.IStorageDocument`1[[ArtOfTest.WebAii.Design.Repository.LightRunResultSingleTestTransport, ArtOfTest.WebAii.Design, Version=xxxx, Culture=neutral, PublicKeyToken=xxxx]], from url: http://xxxxx/v1/results?includeDeleted=xxx&skip=xxx&take=xx&schema=xxx Telerik.TestStudio.ResultsServer.exe(7192:313),Error] CloudStorageRepository`2.ExtractItemsFromResponseAsync() : {"Message":"An error has occurred.","ExceptionMessage":"Command aggregate failed: Sort exceeded memory limit of 104857600 bytes, but did not opt in to external sorting. Aborting operation.
I ran a test list through 'Schedule TestList' using "Run locally" scheduling setup and i received an email with html attachment. When i open the html I can see the actual and expected screenshot are missing.
The specific page and the frame, which is not identified from Test Studio, uses a Salesforce component called ForceAlohaPage and it seems there is a custom implementation for the frames in this component. These are not visible in the Windows.Frames collection, which Test Studio uses under Manager.ActiveBrowser.Frame.
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.
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.
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
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;
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.
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: sourceDetails 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.
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.