We are using TestCafe to log into a WebSite that is secured with Azure Active Directory.
The security info for the Microsoft accounts has been updated (alternative email was to a previous tester's account). That has put something of a block on the account. However that block is temporary when I log in normally with either Chrome or Edge.
The first time with either browser I got a page saying
After pressing the "Next" button I was able to continue to the site logged in with the Test account and it acted as expected.
However when I run any tests in TestCafe that use those accounts they still get the "Your security info change is still pending". Is this a scenario others have found themselves in?
I did try and record a new Test that pressed the "Next" button but that is not working (for a probably unrelated reason) I get the error message "check web address http://192.168.1.30:49763 is correct"
As Vladimir suggested I swicthed to a regular account created in our Active Directory rather than one from outlook.com. I never tried the --disable-page-caching option
Related
Using TestCafe, when running a test suite that already exists, and includes a signin function that clicks through and works successfully using PIV Card authentication and code that was written manually all works well. However, in the essence of speed, I was hoping to record tests using the TestCafe Studio software to get it done quicker than manually doing it.The issue we are running into, if I click "record a new test" on an existing test script, it attempts to run through the existing signin code, (which works if you run it as a normal test executing and not recording), it fails on logging in. I believe it's due to the nature of PIV. I was wondering, is it possible with testcafe studio, a setting perhaps that might maintain state of a logged in session rather than killing it at each test start? I'm already logged in with my PIV when I start the test, but it's appearing to log me out at the start of each session. Anyone have experience with this and know what I can do to make it remember me when I run a new test?
If I correctly understand your usage scenario, you are running tests using a user profile, which is already logged in. Unfortunately, TestCafe Studio does not have a mechanism for launching recording with profiles, as well as launching a browser with any options in general.
I can suggest you the following workaround:
Turn off the code responsible for the login when recording the script.
Use the await t.debug() function instead of login.
When the test starts, wait for the debug panel to appear in the browser and unlock the page:
Sign in manually.
Click Resume on the debug panel.
Write down your script.
Replace await t.debug() with a login function.
When I first launched Bixby Developer Studio, it greeted me with a startup screen with a Login button. I clicked on it and it opened a login page in my browser. I logged in that page using my Samsung developer account. The login was successful and a pop-up appeared asking me if I will allow the page to launch Developer Studio (which was already open at that point). I allowed it, but nothing happened; Developer Studio was still showing the startup screen.
I restarted the application but it again showed me that startup screen with the login button. If I click on the login button, it will just take me again to the login page in the browser. And then nothing would happen if I login again.
I'd suggest verifying if your browser is configured to accept cookies. If that information is verified and the problem still exists, there might be additional information in the ide.log file that can provide more insight
To get that information, follow these steps:
Note the time when you begin the next steps.
Go through the login process until you hit the point of failure.
From the IDE menu, click on Help -> Create Diagnostics Report. This
will popup a dialog that will point you to the location of the
diagnostics report, by default this location is
C:\Users\'User'\bixby-workspace\
Unzip the diagnostics report and look at the ide.log file for any
errors at the time of login.
Feel free to post the errors here or if you prefer, you can open a ticket with Bixby Support too.
There are a couple of points you could work on here -
In this case, I suggest you to keep the browser open in the background while clicking on the login button. I was facing the same issue and somehow it worked for me like this. This has been an issue on a Windows machine. On a Mac this problem is not faced till now.
You could restart the Bixby studio itself for logging in again.
Also, I suggest removing the browser cookies as told by shahnawaz above.
Do let us know if this still persists !
Thank you all for your suggestions. For some reason, it just started working right after I received dozens of Windows updates (it's been a few days since I logged in to my Windows account as I have been using Linux; I rarely use my Windows account now and I wish Bixby Studio was available in Linux too). So, I actually haven't tried any of your suggestions yet. Thanks again, anyways!
I've tried to research this topic and found resources like selenium, but I'm not entirely sure how to do what I need.
Basically here is the workflow:
A user completes a form on our website
The form inputs get emailed to me
I login to the related database system online (it's always the same) to produce the necessary report based on there request.
I then print a PDF version of the report and email it back to them with our email template (customized based on some of their inputs on the website)
Is there a way to automate this? Maybe even run it on a server so users can get the reports even when my computer is off?
Any help would be great!
Thanks.
If you are not able to use API of the resource which gives you PDF file...
I'd go like this:
Configure Jenkins CI on a server.
When a user completes a form - send HTTP POST request to Jenkins CI for building parametrized job (using data from user).
Jenkins job runs the Selenium tests to get desired PDF file.
Using Jenkins email notification plugin send customized email with PDF file from previous step.
We have a Continuous Integration agent that runs with the identity of a non-logged-in user (non interactive) - i.e. the agent does work with sufficient Windows user credentials, but no user is "physically" logged-in to Windows and the agent run as a scheduled task with sufficient privileges.
The problem is that under these circumstances Selenium is not able to open a browser to actually run browser tests.
What could be the solution?
This guide just briefly mentions how to configure the Windows user to be able to run a browser with a non-logged-in user (using control userpasswords2) but that advice doesn't work.
To clarify, this problem is not specific to the Bamboo CI agent (referred to in the above link). It's common to all scenarios where Selenium running on behalf of a non-logged-in user would try to run a browser.
You need to have an interactive session to interact with. I believe this question on SuperUser Run interactive task even if user is not logged on Windows as well as the instructions from Atlassian you linked are the correct answer.
Once the user is set to auto-login, you need to reboot the system to cause that auto-login to occur. The recommendation in the linked question of forcing a lock after the login is a good one for security, but still provides an interactive session for the CI/Selenium to work against and without running under System with limitless privileges.
If this does not fix your problem after following all the directions and rebooting, and you have verified that the user is in-fact logged in at the time you run the CI/Selenium (typically you can check this with Remote Desktop and looking at that logged in user for the console session in Task Manager > Users tab), then there is most likely a different problem.
I have an asp.net 2.0 application running on IIS 6.0. I am using Integrated Windows Authentication. Some users have two network accounts, a personal account and an administrative account. The problem I am facing is that sometimes when they are logged in on the client side using their personal accounts, the logged in user appears at the server side as the admin account. I am retrieving the logged in user network id using System.Security.Principal.WindowsIdentity.GetCurrent().Name.
I suspect that their admin credentials are being cached somewhere and passed instead.
I had exactly this same problem. The web site was seeing me authenticate as my admin account even though I was logged in as my personal account.
It turns out that in Windows you can associate specific user names and passwords with particular sites. Once that is done, the integrated authentication through IE (and Chrome!) always uses those credentials. And, to make things easy, there is no obvious way to get to those settings through Internet Explorer's settings or options.
To fix your issue on Windows XP:
Click Start, Settings, Control Panel, User Accounts.
Click the Advanced tab.
Click Manage Passwords.
Find the entry in the list the corresponds to the site(s) where you're seeing this behavior. Remove it.
Credit where credit is due: This answer was taken almost word-for-word from an unnamed "Junior Member" at ObjectMix.
For Windows 7, use "Control Panel/Credential Manager" (also available via "Control Panel/User Accounts/Manage Your Credentials"). This lists all cached credentials, and lets you easily delete the ones which are causing problems.
When you use Remote Desktop to connect to a server and save your login credentials, it doesn't only save them for remote desktop, it also uses them for connecting through IE and, apparently, Chrome.
This is an old issue, and still valid. I just found if you save credentials while using mstsc (Remote Desktop), and try to use Integrated Windows Auth against any site that is CNAMEd to that server, it will use the saved credentials. Those will be the ones you need to delete.
My PC is locked down at work and IT have removed Credential Manager from the menu in Control Panel.
I was able to get around this by running cmdkey /list from the command line. In the list of "Currently stored credentials" I located the offending hostname and ran cmdkey /delete:[hostname] (no sq. brackets and replace hostname with your host), which fixed the issue for me.
According to this site, rundll32.exe keymgr.dll, KRShowKeyMgr will bring up the dialog to do this as well.
Some background info: http://windows.microsoft.com/en-gb/windows7/what-is-credential-manager