Showing posts with label web technology. Show all posts
Showing posts with label web technology. Show all posts

Very Useful Keyboard Shortcuts for Microsoft Excel

  

1. To format any selected object, press ctrl+1
2. To insert current date, press ctrl+;
3. To insert current time, press ctrl+shift+;
4. To repeat last action, press F4
5. To edit a cell comment, press shift + F2
6. To autosum selected cells, press alt + =
7. To see the suggest drop-down in a cell, press alt + down arrow
8. To enter multiple lines in a cell, press alt+enter
9. To insert a new sheet, press shift + F11
10. To edit active cell, press F2 (places cursor in the end)
11. To hide current row, press ctrl+9
12. To hide current column, press ctrl+0
13. To unhide rows in selected range, press ctrl+shift+9
14. To unhide columns in selected range, press ctrl+shift+0
15. To recalculate formulas, press F9
16. To select data in current region, press ctrl+shift+8
17. To see formulas in the worksheet, press ctrl+shift+` (ctrl+~)
18. While editing formulas to change the reference type from absolute to relative vice versa, press F4
19. To format a number as currency, press ctrl+shift+4 (ctrl+$)
20. To apply outline border around selected cells, press ctrl+shift+7
21. To open the macros dialog box, press alt+F8
22. To copy value from above cell, press ctrl+’
23. To format current cell with comma formats, press ctrl+shift+1
24. To go to the next worksheet, press ctrl+shift+pg down
25. To go to the previous worksheet, press ctrl+shift+pg up

20 Situations and How to Solve them using Excel Formulas

26. To get the first name of a person, use =left(name,find(” “,name)-1)
27. To calculate mortgage payments, use =PMT(interest-rate,number-of-payments,how-much-loan)
28. To get nth largest number in a range, use =large(range,n)… 

29. To get nth smallest number in a range, use = small(range,n)…
30. To generate a random phone number, use =randbetween(1000000000,9999999999), needs analysis toolpak if you are using excel 2003 or earlier…
31. To count number of words in a cell, use =len(trim(text))-len(SUBSTITUTE(trim(text),” “,””))…

32. To count positive values in a range, use =countif(range,”>0″)…
33. To calculate weighted average, use SUMPRODUCT() function
34. To remove unnecessary spaces, use =trim(text)
35. To format a number as SSN using formulas, use =text(ssn-text,”000-00-0000″)…
36. To find age of a person based on DOB, use =TEXT((NOW()-birth_date)&””,”yy “”years”” m “”months”” dd “”days”””), output will be like 27 years 7 months 29 days
37. To get name from initials from a name, use IF(), FIND(), LEN() and SUBSTITUTE() formulas…
38. To get proper fraction from a number (for eg 1/3 from 6/18), use =text(fraction, “?/?”)
39. To get partial matches in vlookup, use * operator like this: =vlookup(“abc*”,lookup_range,return_column)
40. To simulate averageif() in earlier versions of excel, use =sumif(range, criteria)/countif(range, criteria)
41. To debug your formulas, select the portions of formula and press F9 to see the result of that portion…
42. To get the file extension from a file name, use =right(filename,3) (doesn’t work for files that have weird extensions like .docx, .htaccess etc.)
43. To quickly insert an in cell micro-chart, use REPT() function…
44. COUNT() only counts number of cells with numbers in them, if you want to count number of cells with anything in them, use COUNTA()
45. Using named ranges in formulas saves you a lot of time. To define one, just select some cells, and go to menu > insert > named ranges > define

15 Excel Tips on Improving Productivity Using Excel

46. To format a number as SSN, use the custom format code “000-00-0000″…
47. To format a phone number, use the custom format code “000-000-0000″…
48. To show values after decimal point only when number is less than one, use [<1]_($#,##0.00_);_($#,##0_) as formatting code… 

49. To remove grid lines from excel worksheet, go to menu > tools > options > and un-check grid lines option. (Excel 2007: office button > excel option > advanced)… 50. To hide a worksheet, go to menu > format > sheet > hide…
51. To align multiple objects, like charts, drawings, pictures use drawing toolbar > align and select alignment option… 52. To freeze rows on top, select the a row and use menu > window > freeze panes…
53. To disable annoying formula errors, go to menu > tools > options > error checking tab and disable errors you don’t want to see…
54. To change the shape of cell comments from rectangle to some other symbol, select the comment, go to drawing tool bar and change the shape from there… 55. To transpose a range of cells, copy the cells, go to empty area, and press alt+e+s+e…
56. To save data filter settings so that you can reuse them again, use custom views…
57. To select all formulas, press CTRL+G, select “special” and check “formulas”
58. To select all constants, press CTRL+G, select “special” and check “constants”
59. To clear formats from a range, select menu > edit > clear > “formats”
60. To move a chart and align it with cells, hold down ALT key while moving the chart

9 Charting Tips for Everyone

61. To create an instant micro-chart from your normal chart, use camera tool…
62. Understand data to ink ratio to reduce chart junk, using even a pixel more of ink than what is needed can reduce your chart’s effectiveness
63. Combine two different types of charts when one is not enough, to use, add another series of data to your sheet and then right click on it and change the chart type…

64. To reverse the order of items in a bar / column chart, just click on y-axis, press ctrl+1, and check “categories in reverse order” and “x-axis crosses at maximum category” options
65. To change the marker symbol or bubble in a chart to your own favorite shape, just draw any shape in worksheet using drawing toolbar, then copy it by pressing ctrl+c, now go to the chart and select markers (or bubbles) and press ctrl+v
66. To create partially overlapped column / bar charts, just use overlap and gap settings in the format data series area. A overlap of 100 will completely overlap one series on another, while 0 separates them completely.… 67. To increase the contrast of your chart, just remove grayish background color that excel adds to the chart (in versions excel 2003 and prior)
68. To save yourself some trouble, always try to avoid charts like – 3D area charts (unstacked), radar charts, 3D Lines, 3D Columns with multiple series of data, Donut charts with more than 2 series of data…
69. To improve comparison, replace your radar charts with tables…

6 simple steps for better chart formats

70. Remove any vertical grid-lines
71. Change horizontal grid-line color from black to a very light shade of gray
72. Adjust chart series colors to get better contrast
73. Adjust font scaling (for versions excel 2003 and prior)
74. Add data labels and remove any axis (axis labels) if needed
75. Remove chart background colors

20 Excellent Resources and Blogs for getting latest Excel Tips & Charting Ideas

81. PTS Blog
82. Andrew’s Excel Tips
83. Microsoft Excel 2007 Team Blog
84. Contextures
85. Junk Charts
86. Daily Dose of Excel
87. Digital Inspiration
88. Life Hacker
89. Jorge’s Charts Blog
90. DSA Inisights
91. Excel Blog @ TVM Calcs
92. Juice Analytics
93. More information per pixel
94. Newton Excel Bach
95. Presentation Zen
96. Visual Business Intelligence by Stephen Few
97. Cell Matrix
98. Allen Wyatt’s Excel Tips
99. Code for Excel and Outlook
100. All the Popular Excel Bookmarks in Delicious
The traditional method for uploading content to a web server is File Transfer Protocol (FTP), but using this approach has its disadvantages:
  • Using FTP requires that you open additional ports on your perimeter firewall, and this can increase the attack surface of your network and make it more susceptible to penetration by attackers. This is obviously undesirable from the perspective of keeping your network secure.
  • FTP has no file locking mechanism, so it’s possible for two users to upload different versions of the same file simultaneously causing one to be overwritten. This can mean lost time troubleshooting why an uploaded file is different from what you expect.
  • The FTP approach means you have to edit your content locally on the client. In other words, to edit a page already on the web server you would have to download it to the client, edit it there, and then upload it again to the web server. This is a time-consuming and inefficient approach to managing content.
The solution to these problems is WebDAV, a protocol used for publishing and managing content to web servers. WebDAV is an extension of the HTTP/1.1 protocol described in RFCs 2518 and 3253. WebDAV overcomes the three issues described above as follows:
  • WebDAV uses port 80, the same port used by HTTP for web access. So using WebDAV means you don’t have to open any extra ports on your firewall.
  • WebDAV lets only one user modify a file at a time, while allowing multiple users to read it. This allows files to be locked while they are being edited, preventing unexpected changes from occurring.
  • WebDAV lets you edit files on the server instead of needing to download them first to the client. Editing files remotely using WebDAV is as easy as if they were locally present, and the whole process is transparent to the content producer.
Let’s walk through the steps necessary to have WebDAV enabled on an IIS machine and then show how to publish and remotely modify content using WebDAV. For my web server I’m using a Windows Server 2003 machine with IIS 6 installed, and for simplicity we’ll publish content to the Default Web Site.

Install and Enable WebDAV on the Server

First we need to install WebDAV on the server. Note that when you promote a Windows Server 2003 machine to the role of Application Server, it installs various IIS 6 components but WebDAV isn’t one of these components installed. This is different from the earlier Windows 2000 Server platform where installing IIS 5 automatically installed WebDAV as well. To install WebDAV on the IIS 6 machine, use Add or Remove Programs in Control Panel and run the Windows Components Wizard. You can find WebDAV under Application Server | Internet Information Services | World Wide Web Service | WebDAV Publishing:
Once you’ve installed WebDAV, you need to ensure it is enabled. To verify this, check the WebDAV option under the Web Service Extensions node in IIS Manager:
Note that when you allow the WebDAV extension (httpext.dll) you are allowing it for all websites on your server. IIS unfortunately does not let you enable WebDAV on a per-website basis.

Enable WebDAV on the Client

The next step is to enable WebDAV on the client machines that will be used to create and manage content for your website. Windows XP has a built-in WebDAV client that doesn’t need to be installed, only enabled. To enable WebDAV on XP, open the Services console under Administrative Tools and find the WebClient service and double-click on this service to open its Properties sheet:
Change the Startup Type to Automatic, then click the Start button to get the service running. You’re ready to start publishing content to your web server.
Tip:
WebDAV is also supported by Windows 2000 with Internet Explorer 5 or higher installed, and it’s also supported by Office 2000 or later. Some of these earlier platforms don’t fully support every feature of WebDAV that Windows Server 2003 and Windows XP support however.

Preparing the Web Server for Publishing

Now let’s do a bit more preparation of our web server to get it ready for publishing content from the client. First, we’ll create a new virtual directory where we’ll be putting our content. I created a local virtual directory named Budgets, which is an alias to the C:\Finance directory on the web server:
Now let’s configure the web permissions for this virtual directory so users can publish content. This is done on the Virtual Directory tab of the Properties sheet for the virtual directory:
As you can see from the figure, by default only Read permission is enabled for the virtual directory. This won’t do as it means users will be able to read content in the directory but not upload or edit content. To publish content using WebDAV, you should enable the following web permissions on the directory:
  • Read - lets users read what has been published to the server
  • Write - lets users upload new content to the server and edit existing content on the server
  • Directory listing - lets users view a list of published files on the server so they can select the one they want to view or edit.
Note that enabling Write permission on the virtual directory can constitute a security hole on your web server, as the Write web permission allows anyone to upload content to your server. It’s therefore extremely important that you complete the next and final step of the procedure, namely, configure NTFS permissions on your web server to restrict who has access to the content directory. To do this, open Windows Explorer, open the Properties sheet for your content directory (C:\Finance) and select the Security tab:
Note that the Users group has Read, Read & Execute, and List Folder Contents permissions. These are necessary for WebDAV users to be able to write and modify content on the web server. There are also two additional special permissions that the Users group has:
  • Create Files / Write Data
  • Create Folders / Append Data
These permissions too are necessary for WebDAV publishing, so don’t change them.
Since the Users group here is a local group (the web server is a member server that belongs to a domain) its membership includes the Domain Users group, so this means any user in the domain is authorized to publish content to your server using WebDAV. If this is not what you want, then remove the ACE for the Users group from the ACL for your content directory in the figure above and add a different group whose membership contains only those users who are allowed to publish, then give this new group the same permissions that Users has above.
One more tip about permissions:
If your web server is a public-facing one (residing on your DMZ) on the Internet, you should add the Internet guest account (IUSR_servername) to the ACL for your content directory and assign this group Deny Write permission. That way, anonymous users on the Internet will be able to read the content in the directory but won’t be able to modify it.

Publishing Content Using WebDAV

Let’s try out our setup and see if it works. On an XP client machine I have a directory named C:\Stuff with four HTML files in it:
To publish these files to my web server, I select File | Open in Internet Explorer on the client and enter the URL to the virtual directory, which is http://server/Budgets where “server” can be the name, IP address, or DNS name of my web server. The key here is to select the checkbox labeled “Open as Web Folder” as this will enable me to use WebDAV for publishing to the target folder on the server:
Once the web folder opens on the remote server, it looks like this:
Now I simply select the four HTML files in my C:\Stuff window and drag them into my open Web Folder, and WebDAV does its magic. To verify that the files have been published, I can open the same URL http://server/Budgets again in Internet Explorer but this time as a normal web site (i.e. do not select the “Open as Web Folder” option). Here is the result:
A final tip:
if I need to open this Web Folder often to publish content, I can use Add Network Place in My Network Places to create a shortcut to the http://server/Budgets web folder, then simply copy files from my local Stuff folder to the web folder on the remote machine. If you try this you’ll see that you can even use Notepad open and edit the published pages directly on the web server.

Social networking sites are highly effective ways to update information in a timely manner while keeping you and your readers connected. Twitter is not just a trend for celebrities and teenagers, it is used by prestigious companies and news stations looking to expand and market their business while keeping readers informed. Adding a Twitter feed or widget (otherwise known as an RSS feed) to Blogger is an easy integration that will update your Twitter "tweets" automatically as soon as you do.
Other People Are Reading


Instructions
  1. Sign into Twitter with your username and password.
  2. Click "Settings" located at the top right of the homepage.
  3. Type the URL for your Blogger page into the space provided. Click "You can also add Twitter to your site here."
  4. Select the Blogger logo to highlight it, then click "Continue" on lower right-hand side of screen.
  5. Click "Add to Blogger" banner; this will automatically bring you to the Blogger sign-in page. Log in to Blogger using your user name and password.
  6. Choose which blog you want to add the Twitter widget to. Click the "Add widget" button.


Seleniu IDE installation step by step process
  • Open Mozilla Firefox Browser.
  • Type URL : http://seleniumhq.org/download/ in your browser. Selenium IDE download page will get open then click on latest Download version link (Here is 1.3.0) as shown in image bellow. click on that link.
  •  
  •  
  •  When you click on latest Selenium IDE Download version link, Firefox will show one popup saying do you want to allow Mozilla Firefox to install selenium IDE or not. Click on Allow button as shown in image bellow.
  • When you click on allow button, Firefox will automatically install Selenium IDE. after completion of Selenium IDE installation, it will show one pop up saying Selenium IDE installation completed. you need to restart your browser to use selenium IDE. Click on Restart Now button as show in image bellow.
  •  
  • When you click on Restart Now button, Firefox will restart automatically. now click on Tools menu list displayed in top. you can see there Selenium IDE as shown in image bellow.
  •   
  • Click on Selenium IDE as shown in image above. It will launch Selenium IDE window as shown in image bellow. 
So these are the steps to download and install Selenium IDE. Now you can use it to record and play your web application test. Comment here if you face any problem in download and install selenium IDE. I will guide you personally.

download selenium ide, selenium ide download, install selenium ide, selenium, download selenium, selenium testing, selenium ide tutorial, selenium download, selenium documentation, selenium test, free downloads software, open source downloads, selenium tool, download selenium ide for windows, selenium ide extensions, selenium ide plugin, selenium tests, selenium scripts, download ide, using selenium ide, testing selenium, selenium open source, selenium ide help, selenium script, selenium recorder, free download web browser, selenium ide addon, web browser free download, browser free download, selenium plugins, selenium help, selenium ide extension, selenium 2 tutorial, download selenium testing tool, gwt selenium, selenium ide install, selenium linux, 02 downloads, selenium testing software

Protocol testing can be grouped in two categories: Stress & Reliability Tests and Functional Tests.
  • Stress and Reliability Tests include Performance Testing, Load Testing, Stress Testing, Line Speed Testing and Robustness or Security Testing.
  • Functional Tests include Negative Testing, Inopportune Testing, Conformance/Compliance Testing, Syntax and Semantic Testing, Interoperability Testing and Deep-path Testing.


Performance Testing - process of verifying that the performance of the device under test meets an acceptable level. Performance testing is a superset of line speed testing in which performance applies to many aspects of a network device or application, and not just line speed.
Load Testing: Load testing is used to determine how well a system will perform in a typical environment under a specific load. Load testing is useful when you are confident that the application is functionally sound, but you do not know how the application will perform under a specific load.
The example of a load test is a call generator application that generates 1000 calls that a telephone switch must process. Does the switch continue to operate? Does its performance degrade or it crashes?
Stress Testing – process of subjecting the device under test to out of boundary conditions. The device under test should report an error message, gracefully shut down, or reject the input in some other way. In no case, should the device under test crash, reboot, or cause any harm.
An example of stress test can be 50 SNMP managers simultaneously querying one SNMP agent in the device under test. Normally, no more than one to three managers concurrently query an SNMP agent in a device. The device should perform an appropriate action.
Line Speed Testing - process of verifying that a device can operate at its rated line speed, when the bandwidth is 100% utilized or saturated.
For example, if the device is rated as operating at 5 Giga bytes per second, then the device should be able to handle incoming traffic utilizing all the available bandwidth.
Robustness Testing - process of subjecting a device under test to particular input streams. The input streams may be one of three types:
  • Random input streams
  • Valid input streams
  • Invalid input streams
Robustness testing is a form of security testing. Security testing is more broadly defined to include monitoring / surveillance and the detection of specific exploits like IP spoofing or phishing etc.
The example of intelligent robustness test can be adding a trailing dot to the DNS name in the SIP URL. This is legal, but perhaps unexpected. The SIP implementation in the receiving device should process this correctly.
Negative Testing – process to verify that the device under test responds correctly to error conditions or unacceptable input conditions. Negative testing can be challenging because the number of incorrect conditions is unlimited.
Example of a negative test would be using a security protocol for authentication with an incorrect parameter.
Inopportune Testing – process to verify that the device under test is able to react properly when an unexpected protocol event occurs. The event is syntactically correct, but occurs when not expected. Inopportune testing is a specific instance of negative protocol conformance testing.
An example of inopportune testing is a BYE response to a SIP INVITE. The SIP INVITE is expecting a 100 Trying response, but not a BYE response.
Protocol Conformance Testing - process of systematically selecting each requirement in a standards document and then testing to see if the device under test operates according to that requirement. This is done by creating a series of single function tests for each requirement, resulting in thousands of tests.
Conformance testing for computer networking protocols is defined in ISO/IEC 9646-1:1994(E) as "testing both the capabilities and behavior of an implementation, and checking what is observed against the conformance requirements in the relevant International Standards."
An example of a conformance test is to check if the “ping” command operates correctly.
Syntax and Semantic Testing: Protocol conformance testing requires testing both the syntax and the semantics (functionality) of the device under test. Semantic tests force the device under test into a certain condition or state. Often the test cannot verify the correct behavior; it must be verified by an operator.
It’s example can be a test for a router to check whether it is maintaining an accurate count of all erroneous incoming packets of a certain type requires a mechanism for generating the erroneous packets, counting them, directing them to the router, assuring they were received by the router, and then reading the actual counter in the router.
Interoperability Testing - process of testing devices from multiple manufacturers by interacting in such a manner as to exercise the network protocol under test.
Interoperability testing is very useful in the early stages of a new product or new protocol. As products mature, interoperability testing becomes less valuable as it does not uncover enough new bugs to warrant the cost of setting up, configuring and managing network equipment from various manufacturers.
Deep-path testing – process of exercising every path through the code, not just the main path through the code. This is done by maintaining and tracking the protocol conversation very precisely, in a controlled way.
Deep-path testing is useful for forcing a particular path through code that is very difficult to exercise but very important for correct operation.

Usability Testing in Software Testing refers to evaluating the ease with which users can use a new application / software product.


Software Usability is ease with which a product can be used by a specific group of users to achieve specified goals with effectiveness, efficiency and satisfaction in a specified context of use. Usable software enables workers to concentrate on their tasks rather than the software they are using. In other words, we can say a product as usable, if
  • It’s easy to learn
  • Easy to remember
  • Efficient to use
  • Enjoyable to use
  • Pleasing User InterfaceProvides quick recovery from errors
Every design and development decision made throughout the software development life cycle has an impact on that software’s usability.
Achieving the good Usability of a Software Product:
  • Observing users at their jobs and identifying their typical work tasks and procedures.
  • Meeting with users and trying to find out about their preferences and needs.
  • Evaluate the usability of similar products in the market
  • Include the users early in the development phase
  • Evaluate software against accepted usability principles
  • Consider the above points while during the whole Product Development Life Cycle
Benefits of Usability Testing:
  • Results in technical support savings
  • Good usability increases product sales
  • Good usability positively impacts user performance and satisfaction
  • It also improves development productivity through more efficient design and fewer code revisions.
Procedure for Usability Testing: Usability Testing is different from a normal testing or quality assurance. Below are some important points of Usability Testing:
  • Each test has a specific concern that is tested
  • The participants are real users and so real tasks
  • The participants are observed and recorded. The data is analyzed, problems diagnosed and recommendations made.
Tasks in Usability Testing:
  • Identification of participants from user pool.
  • Determining the usability criteria and measures.
  • Creation of test material and writing task scenarios.
  • Identify the test location
  • Pilot testing materials and procedures
  • Introduction of Product and procedures to the participants
  • Executing the task-based tests i.e. participants are asked to complete a series of tasks that address the specific goals and concerns being tested.
  • Participants are asked to articulate their thoughts, feeling and actions.
  • Recording of video images.
  • Analysis of data and documenting findings
  • Making recommendations.
During the Usability Testing, we can able to identify those areas of the system that will cause users to make errors, become less productive or be unable to complete a required activity.

Integration testing is designed to test the structure and the architecture of the software and determine whether all software components interface properly. Integration testing does not verify that the system is functionally correct, only that it performs as designed.

It is the process of identifying errors introduced by combining individual program unit tested modules. Integration Testing should not begin until all units are known to perform according to the unit specifications. It can start with testing several logical units or can incorporate all units in a single integration test.

Below are the four steps of creating integration test cases:

Step 1 - Identify Unit Interfaces: The developer of each program unit identifies and documents the unit’s interfaces for the following unit operations:

- Responding to queries from terminals for information
- Managing transaction data entered for processing
- Obtaining, updating, or creating transactions on computer files
- Passing or receiving information from other logical processing units
- Sending messages to terminals
- Providing the results of processing to some output device or unit

Step 2 - Reconcile Interfaces for Completeness: The information needed for the integration test template is collected for all program units in the software being tested. Whenever one unit interfaces with another, those interfaces are reconciled. For example, if program unit A transmits data to program unit B, program unit B should indicate that it has received that input from program unit A. Interfaces not reconciled are examined before integration tests are executed.

Step 3 - Create Integration Test Conditions: One or more test conditions are prepared for integrating each program unit. After the condition is created, the number of the test condition is documented in the test template.

Step 4 - Evaluate the Completeness of Integration Test Conditions: The following list of questions will help guide evaluation of the completeness of integration test conditions recorded on the integration testing template. This list can also help determine whether test conditions created for the integration process are complete.

Q1. Is an integration test developed for each of the following external inquiries:

- Record test?
- File test?
- Search test?
- Match/merge test?
- Attributes test?
- Stress test?
- Control test?

Q2. Are all interfaces between modules validated so that the output of one is recorded as input to another?

Q3. If file test transactions are developed, do the modules interface with all those indicated files?

Q4. Is the processing of each unit validated before integration testing?

Q5. Do all unit developers agree that integration test conditions are adequate to test each unit’s interfaces?

Q6. Are all software units included in integration testing?

Q7. Are all files used by the software being tested included in integration testing?

Q8. Are all business transactions associated with the software being tested included in integration testing?

Q9. Are all terminal functions incorporated in the software being tested included in integration testing?

Selenium is a portable software testing framework for web applications. The tests can be written as HTML tables or coded in a number of popular programming languages and can be run directly in most modern web browsers. Selenium can be deployed on Windows, Linux, and Macintosh. Selenium is used for UAT (User Acceptance Test).


Selenium consists of

- Selenium Core

- Selenium RC

- Selenium Grid
- Selenium on Rails
- Selenium IDE

Selenium IDE:
Selenium IDE is a complete Integrated Development Environment (IDE) for Selenium tests (previously known as Selenium Recorder). Firefox extension that allows recording and editing of tests. It allows easier development of tests. It can output Ruby for it’s Ruby based (Application Programming Interface) API.

Selenium IDE Features:

- Record and playback

- Intelligent field selection will use IDs, names, or XPath as needed
- Auto complete for all common Selenium commands
- Walk through test cases and test suites.
- Debug and set breakpoints
- Save tests as HTML, Ruby scripts, or other formats
- Support for Selenium user-extensions.js file
- Option to automatically assert the title of every page
- Rollup common commands

Selenium IDE License:
Selenium was developed by a team of programmers and testers at Thought Works. Selenium is open source software, released under the Apache 2.0 license and can be downloaded and used without charge. The Selenium Grid provides a hub allowing the running of multiple Selenium tests concurrently  on any number of local or remote systems, thus minimizing test execution time.

Localization testing is part of software testing focused on internationalization and localization aspects of software.

Localization Test is the process of adapting globalized application to a particular culture/locale. Localizing the application requires a basic understanding of the sets of character commonly employed in modern software development and an apprehension of the risks associated with them.

Localisation testing checks how well the build has been interpreted into a particular target language. This test is founded on the results of globalized validation where the functional support for that particular locale has already been validated. Whenever the product is not globalised enough to support a given language, you probably will not try to focalise it into that language in the first place.

You still have to check that the application you are delivering to a specific market actually works and the following section shows you some of the common areas on which to focus when executing a Localization of test.

Localization testing contains the translation of the application user interface and adapting graphics for a particular culture/locale. The localisation process can also include translating any help content associated with the application program into native language.

Localisation of business solutions needs that you implement the correct business processes and practices for a culture/locale. Differences in how cultures/locales conduct business are to a great extent determined by governmental and regulatory requirements. Hence, localisation of business logic can be a big task.

Things which are often altered during localization, such as the user interfaces and content files. Below is a sample localization testing checklist:

- Spelling Rules
- Sorting Rules
- Upper and Lower case conversions
- Printers
- Size of Papers
- Operating System
- Key boards
- Text Filters
- Hot keys
- Mouse
- Date formats
- Measurements and Rulers
- Available memory

Below is a list of major scenarios for cookies testing of a website. Multiple test cases can be generated from these scenarios by performing various combinations.



  1. Check if the application is writing cookies properly or not.
  2. Test to make sure that no personal or sensitive data is stored in the cookie. If it is there in cookies, it should be in encrypted format.
  3. If the application under test is a public website, there should not be overuse of cookies. It may result in loss of website traffic if browser is prompting for cookies more often.
  4. Close all browsers, delete all previously written cookies and disable the cookies from your browser settings. Navigate or use that part of web site which use cookies. It should display appropriate messages like "For smooth functioning of this site please enable cookies on your browser."
  5. Set browser options to prompt whenever cookie is being stored / saved in your system. Navigate or use that part of web site which use cookies. It will prompt and ask if you want to accept or reject the cookie. Application under test should display an appropriate message if you reject the cookies. Also, check that if pages are getting crashed or data is getting corrupted.
  6. Close all browsers windows and manually delete all cookies. Navigate various web pages and check and see if these web pages show unexpected behavior.
  7. Edit few cookies manually in notepad or some other editor. Make modifications like alter the cookie content, name of the cookie, change expiry date etc. Now, test the site functionality. Corrupted cookies should not allow to read the data inside it.
  8. Cookies written by one web site should not be accessible by other website.
  9. If you are testing an online shopping portal, Check if reaching to your final order summary page deletes the cookie of previous page of shopping cart properly and no invalid action or purchase got executed from same logged in user.
  10. Check if the application under test is writing the cookies properly on different browsers as intended and site works properly using these cookies. This test can be done on browsers like different versions of internet explorer, Mozilla Firefox, Netscape, Opera etc.
  11. If the application under test is using cookies to maintain the logging state for users. Check if some id is being displayed in the address bar. Now, change the id & press enter. It should display an access denied message and and you should not be able to see other user's account.

Testing the software system or software application as a whole is referred to as System Testing of the software. System testing of the application is done on complete application software to evaluate software's overall compliance with the business / functional / end-user requirements. The system testing comes under black box software testing. So, the knowledge of internal design or structure or code is not required for this type of software testing.
In system testing a software test professional aims to detect defects or bugs both within the interfaces and also within the software as a whole. However, the during integration testing of the application or software, the software test professional aims to detect the bugs / defects between the individual units that are integrated together.

During system testing, the focus is on the software design, behavior and even the believed expectations of the customer. So, we can also refer the system testing phase of software testing as investigatory testing phase of the software development life cycle.

At what stage of SDLC the System Testing comes into picture:
After the integration of all components of the software being developed, the whole software system is rigorously tested to ensure that it meets the specified business, functional & non-functional requirements. System Testing is build on the unit testing and integration testing levels. Generally, a separate and dedicated team is responsible for system testing. And, system testing is performed on stagging server.

Why system testing is required:
  • It is the first level of software testing where the software / application is tested as a whole.
  • It is done to verify and validate the technical, business, functional and non-functional requirements of the software. It also includes the verification & validation of software application architecture.
  • System testing is done on stagging environment that closely resembles the production environment where the final software will be deployed.
Entry Criteria for System Testing:
  • Unit Testing must be completed
  • Integration Testing must be completed
  • Complete software system should be developed
  • A software testing environment that closely resembling the production environment must be available (stagging environment).
System Testing in seven steps:
  1. Creation of System Test Plan
  2. Creation of system test cases
  3. Selection / creation of test data for system testing
  4. Software Test Automation of execution of automated test cases (if required)
  5. Execution of test cases
  6. Bug fixing and regression testing
  7. Repeat the software test cycle (if required on multiple environments)  
Contents of a system test plan: The contents of a software system test plan may vary from organization to organization or project to project. It depends how we have created the software test strategy, project plan and master test plan of the project. However, the basic contents of a software system test plan should be:

- Scope
- Goals & Objective
- Area of focus (Critical areas)
- Deliverables
- System testing strategy
- Schedule
- Entry and exit criteria
- Suspension & resumption criteria for software testing
- Test Environment
- Assumptions
- Staffing and Training Plan
- Roles and Responsibilities
- Glossary

How to write system test cases: The system test cases are written in a similar way as we write functional test cases. However, while creating system test cases following two points needs to be kept in mind:

- System test cases must cover the use cases and scenarios
- They must validate the all types of requirements - technical, UI, functional, non-functional, performance etc.

As per Wikipedia, there are total of 24 types of testings that needs to be considered during system testing. These are:

GUI software testing, Usability testing, Performance testing, Compatibility testing, Error handling testing, Load testing, Volume testing, Stress testing, User help testing, Security testing, Scalability testing, Capacity testing, Sanity testing, Smoke testing, Exploratory testing, Ad hoc testing, Regression testing, Reliability testing, Recovery testing, Installation testing, Idem potency testing, Maintenance testing, Recovery testing and failover testing, Accessibility testing

The format of system test cases contains:
  • Test Case ID - a unique number
  • Test Suite Name
  • Tester - name of tester who execute of write test cases
  • Requirement - Requirement Id or brief description of the functionality / requirement
  • How to Test - Steps to follow for execution of the test case
  • Test Data - Input Data
  • Expected Result
  • Actual Result
  • Pass / Fail
  • Test Iteration

In LoadRunner, you can add C Vuser functions to any Vuser script in order to enhance the script. VuGen generates only a few of the general Vuser functions while you record. If required, the remaining functions can be manually programmed into a script.
Below is a list of general API functions for ANSI C scripts. It includes all protocols except for Java, VB, and GUI:

Transaction Functions:
1. lr_end_sub_transaction --> Marks the end of a sub-transaction for performance analysis.

2. lr_end_transaction --> Marks the end of a transaction.

3. lr_end_transaction_instance --> Marks the end of a transaction instance for performance analysis.

4. lr_fail_trans_with_error --> Sets the status of open transactions to LR_FAIL and sends an error message.

5. lr_get_trans_instance_duration --> Gets the duration of a transaction instance specified by its handle.

6. lr_get_trans_instance_wasted_time --> Gets the wasted time of a transaction instance by its handle.

7. lr_get_transaction_duration --> Gets the duration of a transaction by its name.

8. lr_get_transaction_think_time --> Gets the think time of a transaction by its name.

9. lr_get_transaction_wasted_time --> Gets the wasted time of a transaction by its name.

10. lr_resume_transaction --> Resumes collecting transaction data for performance analysis.

11. lr_resume_transaction_instance --> Resumes collecting transaction instance data for performance analysis.

12. lr_set_transaction_instance_status --> Sets the status of a transaction instance.

13. lr_set_transaction_status --> Sets the status of open transactions.

14. lr_set_transaction_status_by_name --> Sets the status of a transaction.

15. lr_start_sub_transaction --> Marks the beginning of a subtransaction.

16. lr_start_transaction --> Marks the beginning of a transaction.

17. lr_start_transaction_instance --> Starts a nested transaction specified by its parent’s handle.

18. lr_stop_transaction --> Stops the collection of transaction data.

19. lr_stop_transaction_instance --> Stops collecting data for a transaction specified by its handle.

20. lr_wasted_time --> Removes wasted time from all open transactions.

Command Line Parsing Functions:
1. lr_get_attrib_double --> Retrieves a double type variable used on the script command line.

2. lr_get_attrib_long --> Retrieves a long type variable used on the script command line.

3. lr_get_attrib_string --> Retrieves a string used on the script command line.

Informational Functions:
1. lr_user_data_point --> Records a user-defined data sample.

2. lr_whoami --> Returns information about a Vuser to the Vuser script. Not applicable for Application Management.

3. lr_get_host_name --> Returns the name of the host executing the Vuser script.

4. lr_get_master_host_name --> Returns the name of the machine running the LoadRunner Controller or Tuning Console. Not applicable for Application Management.

String Functions:
1. lr_eval_string --> Replaces a parameter with its current value.

2. lr_save_string --> Saves a null-terminated string to a parameter.

3. lr_save_var --> Saves a variable length string to a parameter.

4. lr_save_datetime --> Saves the current date and time to a parameter.

5. lr _advance_param --> Advances to the next available parameter.

6. lr _decrypt --> Decrypts an encoded string.

7. lr_eval_string_ext --> Retrieves a pointer to a buffer containing parameter data.

8. lr_eval_string_ext_free --> Frees the pointer allocated by lr_eval_string_ext.

9. lr_save_searched_string --> Searches for an occurrence of string in a buffer and saves a portion of the buffer, relative to the string occurrence, to a parameter.

Message Functions:
1. lr_debug_message --> Sends a debug message to the Output window or the Business Process Monitor log files.

2. lr_error_message --> Sends an error message to the Output window or the Business Process Monitor log files.

3. lr_get_debug_message --> Retrieves the current message class.

4. lr_log_message --> Sends a message to a log file.

5. lr_output_message --> Sends a message to the Output window or the Business Process Monitor log files.

6. lr_set_debug_message --> Sets a debug message class.

7. lr_vuser_status_message --> Generates and prints formatted output to the Controller or Console Vuser status area. Not applicable for Application Management.

8. lr_message --> Sends a message to the Vuser log and Output window or the Business Process Monitor log files.

Run-Time Functions
1. lr_load_dll --> Loads an external DLL.

2. lr_peek_events --> Indicates where a Vuser script can be paused.

3. lr_think_time --> Pauses script execution to emulate think time—the time a real user pauses to think between actions.

4. lr_continue_on_error --> Specifies an error handling method.

5. lr_rendezvous --> Sets a rendezvous point in a Vuser script. Not applicable for Application Management.