Selenium scripts are running very slow when connected to VPN - selenium

I have written selenium scripts for my project and when started running them they run very slowly. It is so long time to perform each action. Have given my scripts to one of my colleague who is working from onshore where they do not need a VPN.
Can anyone please tell me what to do or if I can get some work around that would be greatly appreciated.

I'm currently in the same position.
started running they run very slowly
The actual problem comes from the client's (browser) send and received data across your test environment. The simplest solution would be - if you have any devops admin that can whitelist your PC, so you could get a free access. Never the less this could be a security issue.

Related

Jetbrains Gateway settings for frequent disconnects

I’m using Jetbrains Gateway to use IntelliJ to work on the code in a remote Linux machine.
I connect via SSH. I connect and work fine initially, the latency is around 150 ms but it keeps disconnecting. I realized it disconnects when I stop coding and spend some time on other things (browser etc.). When I want to re-connect it asks for SSH key passphrase, I need to enter it multiple times and the 'Save Permanently' option won't work.
Is there a setting I can do to keep it connected?
Could this be related to my company's network, in which case again can I increase timeout or retry on fail by some settings?
This is Max from the remote development team at JetBrains.
I'm sorry to hear you are having trouble with Gateway. Please create a ticket here https://youtrack.jetbrains.com/newIssue?project=GTW describing your issue and attaching your logs. This will help us understand whats going on and resolve your issue.
Thanks!
I started using Remote Development feature of IntelliJ connecting to the same remote machine as described here https://www.jetbrains.com/help/idea/remote-development-starting-page.html
It does not disconnect, I can work whole day (tested 12+ hours) without any connection issues.

How does selenium behave without an "active session"

I've been working with Selenium for a few years already.
I started with some little stuff in Java and in my previous job I did a project using C# bindings with SpecFlow framework, page objects model, I dealt with complex locators, some JavascriptExecutor even some browsermobproxy work, bottom line I have some experience with Selenium.
Still there is something that is not clear to me.
Is Selenium expected to work properly when there is no "interactive session" into the machine that is running the code ?
Let's say that I connect into remote desktop to a machine in the cloud (Let's say Amazon or Azure), I develop a script and schedule a windows job to run it on the next 10 minutes, then I disconnect from the remote desktop session, the machine is on but no user is connected to it in remote desktop.
Will the script work ? Or depends what does it do ? Might some of the actions not work (Script might include changing the window size, sending keystrokes both through selenium sendkeys and by OS level actions) ? Can we ensure that any script that we developed and works OK while we are connected to the machine will also work when I'm not ?
I hope the question is clear, if not I can maybe explain further
Thanks !!!
Yes, Selenium can run on the cloud machine even though you are not connected to it. It should work without any issue.
As per my knowledge cloud machines are protected by firewall which blocks almost all the ports. You may need to get permission to use the default selenium ports like 4444 or 5555.
Also, may need to increase wait time because the cloud machines are slow in performance compared to normal physical desktop.
Usually cloud machines are linux based, you need to consider the environment as well.

VPN interferes with mobilefirst adapter deployment

I have a problem that has similar symptoms to This question where adapter deployment hangs at 66% complete. As I'm not sure it's the same problem I'm starting this new question.
Using MFP 7.0.0, freshly installed on a new instance of Eclipse Luna.
I have a SQL Adapter that normally can be deployed with no difficulty, and these days if one edits the source that deployment occurs automatically.
As it happens I want to use a database only accessible via a VPN. So initially I developed some SQL scripts in the Database perspective. Using a JDBC URL of this form:
jdbc:db2://the.vpn.host:60006/STUDENT
My scripts work just fine. Now with the VPN still active I attempt to modify my SQL adapter to use that URL, automatic deployment kicks in and bingo, we get to the
Deploy Mobile First adapter (66%)
stage and nothing further happens, ever, this is not just a few minutes time-out, it will sit there for hours. As soon as I drop the VPN the deployment completes.
So my question is two-fold:
1). It seems clear that some aspect of the adapter deployment code is not resilient to network issue - it's clearly not acceptable to hang indefinitely. I speculate that this may hint at the underlying cause of the referenced question.
2). There must be some network peculiarity here. I assume that the deployment process is having trouble reaching the server when the VPN is active. How can I diagnose this?
We have recently identified and corrected the following via an APAR:
PI42968 ADAPTER/APPLICATION DEPLOYMENT TIME CAN BE EXTREMELY SLOW
The fix is now available via IBM Fix Central, so I'd like you to try this fix as I am hopeful it will help in your scenario as well.

Instability on Worklight Server

I'm using websphere liberty profile v8.5.5.0 and worklight 6.2.
The full version of my WL and runtime is:
Server version: 6.2.0.00.20140922-2259
Project WAR version: 6.2.0.00.20140922-2259
I've noticed that sometimes I have troubles getting into the worklightconsole, the server takes a too big of a time to answer and most of the time it just gives me a time out.
Regarding JVM Heap its at 60 - 70% of the total heap, most likkely 1,5 Gb or something like that.
On the FFDC, sometimes I get a error saying something close to an
FFDC Incident has been created: "javax.naming.ServiceUnavailableException: ldap.example.com:389; socket closed; remaining name 'o=example' com.ibm.ws.wim.adapter.ldap.LdapConnection 1670" at ffdc.log
I have my LDAP connected to this websphere via VPN, and I know that webspheres historically have trouble dealing with LDAP.
However I don't see any more errors on the logs; the machine eventually recovers and is able to work correctly, but for some time is 'down'.
If I enable tracing, the verbosity overwhelms the machine and I can't even start the worklightconsole, neither continue to work with worklight like calling an adapter from an application.
There is one more thing, it seems that this happens more frequently after updates on existing application versions or adapters. Does this ring a bell with anyone?
If i ask for a restart when the machine is sluggish, the stoping of the websphere takes quite some time but eventually stops normally and when I start it, everything is fine right out of the bat.
Before asking for a PMR, I would like to know if there is something else I could do to troubleshoot this problem.
Thanks in advance.
My initial "smell" of the problem is that sometimes your VPN connection with LDAP is very slow or your LDAP server is taking too long to respond.
My suggestion is that you try using WAIT(wait.ibm.com), it's a non-invasive easy to use diagnostic tool, to further investigate. If you find out the call to LDAP is getting hang then I suggest you try tuning Liberty LDAP cache, this should help.

how to test a web site to see how much punishment it can take before crashing?

My boss wants me to test our web application to demonstrate how much traffic the web site can handle.
The app is a JSF/JPA/Oracle application, everything is running on one rack mounted server at a local hosting company's data centre.
The truth is, we don't know how much traffic it can handle before it gets unresponsive or shuts down altogether.
What would be a good way to pound on the web app from the internet, simulating tonnes of traffic? I was thinking of setting up a number of different Amazon EC2 virtual machines and getting them to pretend to be web visitors, but is there some kind of software I can run on these machines so they behave like lots of web visitors?
Also, it doesn't have to be free, I'd be willing to apy for a solution or a tool.
Any suggestions or help is greatly appreciated!
Thanks, Rob
Try this, mate:
http://httpd.apache.org/docs/1.3/programs/ab.html
Did you try setting up Selenium-Grid to run tests in parallel. This will simulate actual user actions on the application and in-turn can stress the app server. You can install a performance monitoring utility on the server to monitor the load generated.
Or you could also use J Meter to simulate multiple users accessing your application. You can talk to your network admin team to route this traffic via internet instead of your local internet.