Social Icons

twitterfacebookgoogle pluslinkedinrss feed

Pages

Thursday, 17 January 2013

Hexaware Technologies (Rs 93.4): Buy

 
Stock Chart
January 15, 2013:

We recommend a buy in Hexaware Technologies from a short-term perspective. It is apparent from the charts of the stock that after registering a multi-year high at Rs 142 in mid-September 2012, the stock peaked out. Since then, the stock has been in a medium-term downtrend. While trending down, the stock decisively breached its key supports at Rs 110 and Rs 100 in November and December respectively. However, the stock's significant support at Rs 85 arrested the decline in late December.

Triggered by positive divergence in daily relative strength index and cushioned by support area, the stock reversed direction and started moving higher. After breaching the 21-day moving average the stock emphatically broke through its immediate resistance at Rs 90 by gaining 4 per cent on Tuesday. Near-term trend for the stock is up. We notice that there is an increase in daily volume over past three trading sessions. The daily RSI is moving higher in the neutral region towards the bullish zone and weekly RSI has entered the neutral region from the bearish zone. The daily moving average convergence divergence indicator has signalled a buy and is moving higher in line with the stock price.

Further, the daily price rate of change indicator is featuring in the positive area implying buying interest. Taking a contrarian view on the stock, we are bullish on it from short-term perspective. We expect its rally to prolong and reach our price target of Rs 97 or Rs 99 in the approaching trading sessions. Traders with short-term perspective can consider buying the stock with stop-loss at Rs 91.5.

Tuesday, 15 January 2013

Buy Hexaware Technologies: Thununguntla


Jagannadham Thununguntla of SMC Global is of the view that one can buy Hexaware Technologies.

Thununguntla told CNBC-TV18. “ Hexaware Technologies at Rs 90 is a good contrarian bet wherein entire market is bearish on Hexaware, but what we have to see is that they have given a revenue guidance cut of about 2 percent and there is an expectation of a profit margin squeeze as well. Having said that at the current price the stock is trading around 8-8.5 PE multiple and if you adjust to the cash on the balance sheet the PE multiple will reduce further.”

He further added, “Hexaware Technologies is a zero debt company. I believe that at Rs 90 it makes a good sense. If you can average I think it makes sense to average also at this level. I think the stock should show decent performance. First quarter of the 2013 calendar year there can be some margin squeeze when they publish their financials. But I think it maybe a temporary phase. Eventually Hexaware can be a good buy and moreover there is always an anticipation of some deal happening in the stock should keep the upsides open. So all in all at Rs 90 it should be an opportunity to average.”

Expect 6-8% upside in Hexaware, Polaris: SP Tulsian

Hexaware Technologies and Polaris Financial Technology can add 6-8%, says SP Tulsian, sptulsian.com. Hexaware is likely to come out with good numbers in the first week of February and Polaris is also expected to post better numbers.

Hexaware Technologies  and Polaris Financial Technology  can add 6-8%, says SP Tulsian, sptulsian.com.

Tulsian told CNBC-TV18, "I will remain away from the larger ones because we have already seenWipro  moving up last week by about 6-7 percent. TCS  also has come closer to a price to earnings (P/E) multiple of Rs 17-18 but I see quite a good ideas available in the midcap IT space. There are four-five stocks but I have zeroed in Hexaware and Polaris. If you see the performance of both the companies, they have been quite robust and I think considering the results now of Infosys and the expectations built on all the IT stocks, one should look for these midcap IT stocks for a relative performance."

He further added, "The gains are still seen much more on a relative performance basis. So Hexaware is likely to come out with good numbers in the first week of February and Polaris is also expected to post better numbers. So maybe an upside of about 6-8 percent can be expected on both the stocks next week."

Thursday, 13 December 2012

Hexaware revises revenue outlook; to grow 18% Y-o-Y in CY 2012

Mumbai – December 7, 2012: Hexaware Technologies Limited, a leading global provider of IT, BPO and Consulting services has revised its guidance for the current quarter and for the year ending December 31, 2012.
Click here to read more…

Tuesday, 20 November 2012

Oracle R12 Applications Using LoadRunner


The Challenge
We recently load tested our first Oracle R12 release (All modules for nationwide and international wide of Oracle ERP R12). The company was upgrading to R12 from 11.5.8 largely for performance reasons.
We knew we’d be “cutting new ground” with LoadRunner on R12. This became evident with our first testrecord-and-playback, which failed even after finding and fixing all the missing correlations. We raised a ticket with HP (SR# #4622615067), and with their initial help, step by step we overcame all the nuances of coaxing vugen to record successfully, and then creatively working around its inability to recognize the full set of identifiers for a new java ITEMTREE object.

Configuring Oracle Unified Directory (OUD) 11g as a Directory Server


I used Oracle Unified Directory (OUD) Version 11.1.1.5.0 during my test deployment locally here. I tried to collect as much information possible in this post for configuration.
Ideally, there are three possible configuration options for OUD:
  • as a Directory Server
  • as a Replication Server
  • as a Proxy Server
Directory Server provides the main LDAP functionality in OUD. Proxy server can be used for proxying LDAP requests. And Replication Server is used for replication from one OUD to another OUD or even to another ODSEE (earlier Sun Java Directory) server. You can my previous posts on OUD here and here.
In this post, we will talk about configuring OUD after installation as a Directory Server. You can read about OUD installation in my previous post here.
Once installation is completed, you will find following files in $ORACLE_HOME Directory.

Monday, 19 November 2012

HP DIAGNOSTICS


Overview
Identifying and correcting availability and performance problems can be costly, time consuming and risky. IT organizations spend more time identifying an owner than resolving the problem.
HP Diagnostics helps to improve application availability and performance in pre-production and production environments. HP’s diagnostics software is used to drill down from the end user into application components and cross platform service calls to resolve the toughest problems. This includes slow services, methods, SQL, out of memory errors, threading problems and more.
How HP Diagnostics software works
During a performance test, HP Diagnostics software traces J2EE, .NET, ERP, and CRM business processes from the client side across all tiers of the infrastructure. The modules then break down eachtransactionresponse time into time spent in the various tiers and within individual components. 

Performing Manual Correlation with Dynamic Boundaries in LR


What is Correlation: It is a Process to handle dynamic values in our Script. Here the dynamic value is replaced by a variable which we assign or capture from the server response.
Ways to do correlation: There are two ways to do this Correlation.
They are as follows:
  • Auto-Correlation: The Correlation Engine in LR Package captures the value and replaces it with another value
  • Manual Correlation: Understanding of the Script and its response is highly needed to do this. It is bit complex to do Manual Correlation sometimes but this is always the preferred method to handle Dynamic Values in our Script
Usually the Manual Correlation is done by capturing the dynamic value which is present in between the Static left and right Boundaries.
Objective: The intention of this article is that to give a method which will be useful when we wanted to capture and handle Dynamic Values when even the Left and right Boundaries are also dynamic.
The Solution can be much simple, Instead of determining the boundaries to the String we can actually use Text flags.
Before Getting into the Topic we should know about the Text Flags:
Text flags are the Flag used just after the text with Forward Slash.

HP Ajax TruClient – Overview with Tips and Tricks

Overview

  • In LoadRunner 11.5, TruClient for Internet Explorer has been introduced. It is now possible to use TruClient on IE-only web applications.

Note: This still supports only HTML + JavaScript websites. It does not support ActiveX objects or Flash or Java Applets, etc.

  • TruClient IE was developed as an add-in for IE 9, so it will not work on earlier versions of IE. This version of IE was the first version to expose enough of the DOM to be usable by a TruClient-style Vusers. Note that your web application must support IE9 in “standard mode”.
  • Some features have also been added to TruClient Firefox. These include:
    • The ability to specify think time
    • The ability to set HTTP headers
    • URL filters
    • Event handlers, which can automatically handle intermittent pop-up windows, etc.
  • Web page breakdown graphs have been added to TruClient (visible in LoadRunner Analysis). Previously they were only available for standard web Vusers.

Tips and Tricks

NTLM authentication -

Scenario: Some applications when accessed on Mozilla, demand NTLM authentication. If these steps appear while recording,   they don’t get recorded. Hence while replaying, due to the absence of these steps; the application fails to perform the intended transactions.

Solution: To avoid a situation in which an application asks for NTLM authentication while recording and replaying, one has to specify the application as a trusted NTLM resource. To make that, follow these steps.

  • Open the file “user.js” located in “%lr_path%\dat\LrWeb2MasterProfile”.
  • Locate the preference setting “network.automatic-ntlm-auth.trusted.uris”.
  • Specify the URL of the trusted resource as the value of this setting.
  • Save the file “user.js”

These changes are done only where the VUgen is used to develop the script. These changes get saved with the script and apply on different machines during load tests. 

Disable pop-ups during recording -

Scenario: The occurrence of unwanted pop-ups creates hurdles during script development.

Solution: To disable the pop-ups, we can do it by following the below mentioned steps –

  • In the Firefox address bar, enter ‘about: config’. Click ‘I’ll be careful, I promise’ tab
  • In the filter field, enter disable_open_during_load
  • Right click on ‘disable_ open_during_load’ and select ‘Toggle’. The value changes to ‘false’
  • Record initial Navigation step again
  • Your pop-ups will be disabled

Displaying the value in a parameter or variable -

Scenario: To understand the value that gets stored in a parameter while replaying the script.

Solution: This can be achieved using alert () function.

Example:

var x=”Good Morning”;

window.alert (x);

Calculating number of text occurrences -

Scenario: Scripting of most of the modern internet applications with number of dynamic features demand this requirement. Be it to check the presence of a text on the web page or to count the number of tickets generated in the application during run time, calculating text occurrences and using this count with right logical code.

Solution: In AJAX, using JavaScript functions, we can achieve this objective. This can be done as –

  • Drag ‘Evaluate JavaScript code’ from toolbox
  • In the arguments section add the following code -
    var splitBySearchWord = (document.body.textContent).split (‘Text to search for);
  • Then display the total number of occurrence of the text using Alert () method.
    window.alert (splitBySearchWord. Length);

 

 

Inserting random think time -

Scenario: End-user behavior is unpredictable and as a performance tester, while executing a performance test, our aspiration should always be to reach closest to the real time scenario. Some end users may spend only 2 secs before navigating to the next page, while many others may think for more time. Hence in many test scenarios, it would not be ideal to insert a fixed think time value before a web request; rather one must use random think time in such cases.

Solution: The above scenario can be achieved using advanced JavaScript functionality. They are:

  • From ‘Toolbox’, copy a wait function and paste it before the web request
  • In the argument section, replace the interval value ’3′ by ‘Math.floor (11*Math.random () +5); ‘

The above function will return a random number between 5 and 15.

Math.floor () method rounds a number Downwards to its nearest integer (Eg. The output of code ’Math.floor (1.8); ‘is 1). Hence 11 are used as a multiplication factor so that an integer in the upper decimals of 10 will be rounded to 10.Math.random () method returns a random number between 0 and 1.

Handling browser cache -

Scenario: You may wish to manage the cache handling features of the browser to replicate different types of test scenarios.

Solution: This can be achieved by following these steps -

  • Open the Script under Interactive mode.
  • Go to VUser > Run-Time Settings > General > Load mode Browser Settings
  • Inside the Settings frame display the option Advanced
  • Select the option “Compare the page in cache to the page on the network”; select one of the four values above according to your test requirements

0 = Once per session

1 = Every time the page is accessed

2 = Never

3 = When the page is out of date (Default value)

Conclusion

In Hexaware, we have used TrueClient protocol to record many applications for different clients. Some of the benefits we fruited are as follows – HP TruClient Protocol works with many frameworks like jquery, Ajax, YUI, GWT, JS, etc. Rich internet applications developed on Web 2.0 technologies can be easily scripted and replayed. Script development is interactive with script flow at one side of the window and application opened in the browser at the other. This makes scripting with AJAX TruClient protocol easier and faster. Object identification features minimize the use of complex correlations and make script more dynamic. Thus the scripts become more resilient to back-end changes. Complex client side events like Mouse over, slider bars, calendar items, dynamic lists, etc. can be very easily scripted, customized and replayed. Thus testing cycle is much shorter in case of Ajax TruClient as compared to that with other web protocols. Using AJAX TruClient, API + GUI response time can be obtained, as opposed to other protocols that provide only API response time.

 

XML Optimization through custom Properties

1. Problem Statement:

I am creating a XML file as an output . If my source is empty, is there a way to  avoid the creation of an empty XML file?

Sample output Data with source data :


 

Case 1 : Empty Source – Creation of Minimal XML file

We have to set the following properties of an XML Target at session level under the Mapping tab.

Null Content Representation – “No Tag”

Empty String Content Representation – “No Tag”

Null Attribute Representation – “No Attribute”

Empty String Attribute Representation – “No attribute”

The Output file is as follows

Note: It generates the minimal XML and parent tag. The parent tags are shown as Unary Tag in the browser.

Case 2:  Creation of Zero Byte XML file.

Even though setting all the above property you will get an empty XML file with no data or only with parent tags. If downstream system Like MFT (Managed File Transfer) consumes this garbage file, you will end up with errors while processing.  To avoid these kinds of errors we have to set two custom properties in the Integration Service:

WriteNullXMLFile = No

The WriteNullXMLFile custom property skips creating an XML file when the XML Generator transformation or Target doesn’t receive data . The Default value for this parameter is Yes and. if you set No , the minimal XML document will not be generated and the target XML file size will be of zero byte.

 

2) Suppress the Empty Parent Tag

 

A PowerCenter session with an XML target writes empty parent tags to the XML file when all child elements are null.  This may occur even when the Null Content Representation option is set to No Tag in the session properties.

SuppressNilContentMethod = ByTree

The SuppressNilContentMethod server parameter will suppress the parent tags as well as the child tags when all the child elements are null. To achieve this, set the custom property to “ByTree”.

 

 

ByTree

The ByTree flag suppresses non-leaf elements up to (but not including) the document root, when the entire element chain originating at the specified element contains no data. ByTree flag is always optimal.

For example the Street1 and Street2 values are empty, without setting the property you will get the below output with Street Unary tag:

If you set the Property SuppressNilContentMethod = ByTree the entire Street tag will be vanished.

3) To reduce the Session log size while using XML as Target

XMLWarnDupRows =No

By default; it is Yes, the Informatica Server writes duplicate row warnings and duplicate rows for

XML targets to the session log.

4 ) To reduce the cache file size created by XML target and increase the performance of reading large XML files.

XMLSendChildFirst=Yes

How to set the Custom Properties?

Infa 8.x and Above

1. Connect to the Administration Console

2. Stop the Integration Service

3. Select the Integration Service

4. Under the Properties tab, click Edit in the Custom Properties section

5. Under Name enter WriteNullXMLFile = No

6. Under Value enter No

7. Under Name enter SuppressNilContentMethod

8. Under Value enter ByTree

9. Click OK

10. Restart the Integration Service

Starting with PowerCenter 8.5, this change could be done at the session task itself as follows:

These custom properties would override the DI service level properties.

1. Edit the session

2. Select Config Object tab

3. Under Custom Properties add the attribute WriteNullXMLFile=No and SuppressNilContentMethod=ByTree

4. Save the session

Session Properties: