Hello,
I have a coded step "Login_FrameworkTelerik" that requires input such as "User email".
When I add the coded step in my test, I would like to be able to set the "User email" in a way similar to when I provide Text to the built-in action "enter text".
Thank you for the feedback
After following the steps at https://docs.telerik.com/teststudio/advanced-topics/coded-samples/general/execution-extensions, I am having an issue with the name of the DLL placed in C:\Program Files (x86)\Progress\Test Studio\Bin\Plugins\.
This is a follow up to the issue mentioned at https://www.telerik.com/forums/writing-to-executioncontext-manager-log-in-oninitializedatasource#1581852. I'm starting a new thread as this is a different issue than the subject of the prior thread.
Visual Studio is creating TelerikExecutionExtension.dll. I copy this DLL to C:\Program Files (x86)\Progress\Test Studio\Bin\Plugins\ and when I run a test. The method OnInitializeDataSource fails to execute. If I copy TelerikExecutionExtension.dll to C:\Program Files (x86)\Progress\Test Studio\Bin\Plugins\ClassLibrary.dll (or simply rename the existing DLL) and rerun the test, the method OnInitializeDataSource is executed. The DLL name does not appear to impact the other methods within the IExecutionExtension implementation.
Telerik Test Studio Trace Log for both runs show the DLLs found and loaded, albeit in alphabetical order:
Only when named ClassLibrary.dll does the code in OnInitializeDataSource write to the log (red below). OnBeforeTestStarted and OnAfterTestCompleted write to the log regardless of DLL name (green below).
I can provide full logs from "C:\Program Files (x86)\Progress\Test Studio\Logs" and "C:\WebAiiLog", along with the test and test list files if a non-public drop location is available.
Thank you.
I have a test A, which has a single vairable that it uses in its data. This variable is not in Test B or Test C.
Test A calls Test B, Test B has its own data (FILENAME, ISDEFAULT), but Inherit Parent Data Source is false in Test B.
Test B Calls Test C, and Test C has Inherit Parent Data Source set to true and the same data columns as Test B (FILENAME, ISDEFAULT). In TestC. When I run my test, the FILENAME variable is empty.
It seems like Test C is using Test A's data, and not Test B's.
Any suggestions? Is this scenario something that is not possible?
Hi,
I tried to run the test list on Remote VMs but its failing, the message
SendInput: Failed. Win32Error:Is there any way to fix the issue ?
Thanks
I followed the instructions at https://docs.telerik.com/teststudio/advanced-topics/coded-samples/general/execution-extensions and I am successfully getting and using a dynamic dataset from the method OnInitializeDataSource. My problem is that output written to executionContext.Manager.Log is not presenting in the log file. The log file is:
Overall Result: Pass ------------------------------------------------------------ '9/30/2022 10:47:21 AM' - Executing test: 'WebTest1', path: '_POC\WebTest1.tstest.' '9/30/2022 10:47:21 AM' - Using .Net Runtime version: '4.0.30319.42000' for test execution. Build version is '2022.3.914.3'. '9/30/2022 10:47:21 AM' - Starting execution.... '9/30/2022 10:47:25 AM' - Detected custom code in test. Locating test assembly: TestProject1.dll. '9/30/2022 10:47:25 AM' - Assembly Found: D:\TelerikTestStudio\VNAV_Playground\bin\TestProject1.dll '9/30/2022 10:47:25 AM' - Loading code class: 'TestProject1.WebTest1'. ------------------------------------------------------------ ------------------------------------------------------------ '9/30/2022 10:47:25 AM' - Detected DataDriven Test. Starting data iterations. ------------------------------------------------------------ '9/30/2022 10:47:25 AM' - [Iteration #1: (ENV=Env2)(TEST_ITERATION=1)(VNAV_ID=V00000001)] ------------------------------------------------------------ Overall Result: Pass ------------------------------------------------------------ '9/30/2022 10:47:25 AM' - LOG: Executing VrsExecutionExtension: OnBeforeTestStarted '9/30/2022 10:47:25 AM' - Using 'EdgeChromiumHeadless' version '105.0.1343.53' as default browser. '9/30/2022 10:47:25 AM' - Using Telerik Components Version: 'Latest' '9/30/2022 10:47:25 AM' - Using 'https://xxx/xxxx' as base url. '9/30/2022 10:47:25 AM' - LOG: ********** This is my test code ******** '9/30/2022 10:47:25 AM' - 'Pass' : 1. New Coded Step ------------------------------------------------------------ '9/30/2022 10:47:25 AM' - Overall Result: Pass '9/30/2022 10:47:25 AM' - Duration: [0 min: 0 sec: 19 msec] ------------------------------------------------------------ '9/30/2022 10:47:25 AM' - LOG: Executing VrsExecutionExtension: OnAfterTestCompleted ------------------------------------------------------------ '9/30/2022 10:47:25 AM' - Overall Result: Pass '9/30/2022 10:47:25 AM' - Duration: [0 min: 0 sec: 22 msec] ------------------------------------------------------------ '9/30/2022 10:47:26 AM' - Test completed!
My class is:
public class ExecutionExtension : IExecutionExtension
{
public void OnAfterTestCompleted(ExecutionContext executionContext, TestResult result)
{
executionContext.Manager.Log.WriteLine($"Executing {nameof(VrsExecutionExtension)}: {nameof(OnAfterTestCompleted)}");
}
public void OnAfterTestListCompleted(RunResult result)
{
}
public void OnBeforeTestListStarted(TestList list)
{
}
public void OnBeforeTestStarted(ExecutionContext executionContext, Test test)
{
executionContext.Manager.Log.WriteLine($"Executing {nameof(VrsExecutionExtension)}: {nameof(OnBeforeTestStarted)}");
}
public DataTable OnInitializeDataSource(ExecutionContext executionContext)
{
executionContext.Manager.Log.WriteLine($"Executing {nameof(VrsExecutionExtension)}: {nameof(OnInitializeDataSource)}");
DataTable dt = null;
... // code excluded but is successfully populating and returning dt
return dt;
}
public void OnStepFailure(ExecutionContext executionContext, AutomationStepResult stepResult)
{
executionContext.Manager.Log.WriteLine($"Executing {nameof(VrsExecutionExtension)}: {nameof(OnStepFailure)}");
}
}
In the log, I can see that OnBeforeTestStarted and OnAfterTestCompleted successfully write to the test log, but OnInitializeDataSource does not. Any thoughts on what I might be missing here?
On a somewhat unrelated note, it appears that the name of the DLL created as part of this project has to match some specification. This was not apparent to me while following the instructions at https://docs.telerik.com/teststudio/advanced-topics/coded-samples/general/execution-extensions. Naming the DLL ClassLibrary, ClassLibrary1, or ClassLibrary2 all appeared to work. Naming it ExecutionExtension.dll did not. If there is a requirement, noting it on the coded-samples page might prove helpful for anyone else stumbling their way through this for the first time.
Thank you.
I have a very basic 'log into Telerik.com' test that I made. When I try to execute the test with Chrome it keeps crashing because I'm already logged in - so it can't perform the test of typing my name and password. However, my actual Chrome has had its cookies and histories and cache cleared. If I try to log in to Telerik with my Chrome browser, there's nothing saved. But when I run my test, there's all my old information, saved and cached. I even uninstalled Chrome and it's still happening.
So, where exactly is Test Studio storing this information, and how do I clear it without having to add a "clear cache" step to every test?
I'm trying to run a desktop test using excel. I have mapped excel via the application path.
When I press record excel opens but I cannot record anything, the recording toolbar does not display.
From my log file;
[09/23 14:10:18,Telerik.TestStudio.exe(19524:16),Recording] RecordViewController.ApplicationLaunched() : Error launching the recorder. Error: Launched desktop application exited.
Can you please advise what the issue may be here.
Thanks
Adrian
Hi Team,
We are encountering this issue for quite a while now and have not been able to find a solution for the same.
We are trying to create a test list with 4-5 tests. All the tests were originally tested and all were passing, but after adding them to the list and running the list, we encounter issues in random steps spread throughout the entire list.
Even after debugging them, we face a different set of failures that weren't happening earlier. There also have been situations, where the entire list passed without any failure, but we are not able to understand the root cause for this inconsistency.
Is there any solution to resolve this behavior?
Thank You.
Hey guys,
I have a kendo menu via ASP.NET Core:
<kendo-menu name="menuNavigation">
<scrollable enabled="true" />
<items>
<menu-item text="Einstellungen">
<sub-items>
<menu-item asp-action="Index" asp-controller="Einstellungen" text="Fahneneinstellungen & Preise"></menu-item>
<menu-item asp-action="Archiv" asp-controller="@Namings.Data.Loan" text="Archivierte @Namings.Data.Loans"></menu-item>
</sub-items>
</menu-item>
</items>
</kendo-menu>
What I'm trying to achieve is to make a mouseover event over the "Einstellungen" menu item, that it opens the underlying menu (I think you call these sub menu items "options"). Then I want to navigate the mouse to the sub menu item and click on that, triggering a link and change the browsers url.
KendoMenu menu = Pages.Home.MenuNavigation;
KendoMenuItem menuItemSettings = menu.AllMenus.SingleOrDefault(x => x.MenuItemTitle == "Einstellungen");
menuItemSettings.MouseHover();
Wait.For(x => menuItemSettings.AllOptions.Count > 0, menuItemSettings, 5000); // running into a timeout, because menuItemSettings.AllOptions always 0
KendoMenuOption menuOptionSettings = menuItemSettings.AllOptions.SingleOrDefault(x => x.MenuOptionTitle == "Fahneneinstellungen & Preise");
menuOptionSettings.MouseClick();
ActiveBrowser.WaitForUrl(Pages.Settings.Url, false, 10000);
With my code I can achieve already moving the mouse to the menu item and hovering over it, but the I'm getting a timeout in the wait step. Indeed the menu item's "AllOptions" property always remain "0". Although in the testing browser the mouse is successfully hovering over the kendo menu and it actually opens the submenu, in code these submenu items are never recognized.
Am I doing something wrong? Or do you have some better solution for me to achieve this behavior?
Test Studio version 2022.2.804 and I'm using the VS 2019 extension.