Search This Blog

Technical Logs

Pages

Posts

Putting the knowledge gained so far in
this and frequent questions that many
may ask and what we have asked ourselves. 1.1What is the need for using
Spark ? Spark gives you horizontal scale ability in
a programmer friendly way. 1.2But what about other options ? There are other options as well. I have
listed them below, which describes and highlights Sparks place in the
architecture TypeLevel of GranularityDescritpion LoadBalancer (nginx,haproxy) Request
Level (usually
HTTP requests) Works
well for Request-response type client server protocols. Works also well in
context of microservices in application program side However
to scale the processing insdie the application programs this is inadequate Task
Managers (celery,
other MQ based) Task
Level Helps
to scale processing in the application program.Takes care of Task handling.
However the onus is on the developer to split application logic to
independent tasks. Usually only
the simplest things are really split into tasks. Equal…

Intermittent failure in Selenium Test cases ?
After clicking the drill down sometimes web-elements are not found causing all summary table test cases to fail.
Common Root Causes
1) Prefer Selection By.ID className then By.cssSelectior and only if all else fails use By.Xpath
Selection by CSS By.CSSSelector should be preferred over XPath as this is more stable as it is natively supported by browser . XPAth is an abstraction provided by Selenium and not as performant. If XPath is used make sure that you have hand written the XPath and it is performant and not generic in that it has to to brute force search through the entire DOM to find your element.
Where ever possible , use By.ID, else By.CSSSelector and in case of no other option use XPath after proper testing.
You can use FireFinder plugin for FireFox (first add FireBug) to test your CSS or Xpath (if there is no way you can select by CSS)
For example this XPath to finding the drill down element //*[@id='scTableTest_Site-PLMN-PL…

The aim of the page is to give practical and widely adopted industry best practises and guidelines for all phases of JavaScript development lifecycle.All the necessary tools and frameworks like code analysis and test frameworks are already integrated to our CI system and is ready for use and is already in use by teams
Part 1: Sensitizing with JavaScript languagePersons coming from other languages may not appreciate certain coding guidelines that is recommended and set in SONAR JS Analysis and that is also checked by popular tools like JSHint and JSLint;
Example the function below will return 'undefined' and not 'Hello World'. function main() {
return
'Hello, World!';
}main(); ->>return's 'undefined'
This is because in JavaScript semi columns are not mandatory and JS will add semi colon automatically during code interpretation; So it will add a semicolon after return making the function return nothing; Such and other such quirks are pres…

For easily monitoring the JVM metrics there is no better tool than Java VisualVM or its older counterpart JConsole; These two tools comes with the Java JDK. So it is absolutely necessary that you copy a JDK version to some temp directory in which your server runs. {Make sure that you do not install the JDK / put the java executable in the path.}

Before going in JVM monitoring, it is essential to understand a little about Java's memory model.

Note - This article is written with HotSpot JVM in mind,which is one of the most commonly used one ; implemented by OpenJDK and Oracle - formerly from Sun. This is not the only one , notable being JRockit and others; and some details would change with a different JVM.

When you are running a Java Process in a Server you allocate the Memory for the Java Virtual Machine. This memory is split to process heap { what you give withe the Xmx Xms command}where it is again subdivided on generational basis (Young, Old) and the PermGen - which is grad…