Subscribe by Email


Showing posts with label Keywords. Show all posts
Showing posts with label Keywords. Show all posts

Saturday, February 2, 2013

Explain Robot Framework?


The Robot Framework was developed as generic test automation framework for two major tasks namely:
  1. Acceptance testing and
  2. ATDD or acceptance test driven development
- It makes use of the keyword driven testing approach for achieving the above mentioned two tasks. 
- It has got a very simple and unique tabular test data syntax that is quite easy to follow and this is what that makes robot framework so easy to be used. 
- All this makes the robot framework popular among the testers.
- Test libraries that can be implemented through either java or python can be used for extending the capabilities of the frame work. 
- The users have the choice of creating new keywords from the existing ones. 
This can be done using the same syntax that is available for the creation of the test cases. 
- Robot framework is actually an open source software. 
- The license it possesses is the Apache license 2.0.
- The Nokia Siemens Networks supports the development of this framework and also owns its copyrights. 

Features of Robot Framework

The robot test automation framework is abundant of features. Its features are:
  1. Its tabular syntax is easy to use and can be used for the creation of the test cases in a way that is uniform.
  2. Robot framework can work up on three approaches namely:
- Keyword driven testing approach
- Behavior driven development approach or BDD
- Data driven testing approach or DDT.
  1. It provides the facility for the creation of higher level keywords that are reusable for the already existing keywords.
  2. The reports and logs it generates are quite easy to follow and are based up on HTML.
  3. This test automation framework does not depend up on any platform or application.
  4. The architecture of the frame work is quite modular in nature that helps in supporting the creation of the tests for even the software systems and applications that possess a number of interfaces all different from one another.
  5. It comes with a library API that is quite simple and can be further used for the creation of other test libraries that can be customized.
  6. The XML based outputs that the framework provides allow for integrating itself in to the build infrastructure that already exists. These are called continuous integration systems.
  7. It also provides a command line interface for the same purpose as that of the XML based outputs.
  8. It supports selenium tool for the following things:
Ø  Web testing
Ø  Java GUI testing
Ø  telnet
Ø  running processes
Ø  SSH and so on.
  1. The framework comes with a remote library interface, thus enabling the implementation of the test libraries in any desired programming language and distributed testing.
  2. The tagging feature provides helps in categorizing the tests and selecting them accordingly for the execution.
  3. For variables, it comes with a special built – in support for regulating testing in different environments.
- Test cases can be written either in HTML or in plain text.
- Also, any editor can be used for editing the test cases. 
- The robot test automation framework comes with a graphical development tool called the RIDE or robot IDE. 
- The tool has got a number of features specific to the framework such as syntax highlighting, code completion and so on. 
- Selenium library is an extension to the robot test automation frame work and similarly there are a number of others. 
- However, there are some other languages that can be used for implementing the libraries such as perl, PHP, java script and so on. 
- However, these languages can be used only through a remote library interface.


Friday, January 18, 2013

Explain Cucumber Testing Tool?


A need was felt for a tool that could create and run automated acceptance tests that were developed in so called BDD or behavior driven development style. Thus, cucumber testing tool came in to existence. 

About Cucumber Testing Tool

- The software for this tool has been developed in ruby programming language. 
- However, the cucumber testing tool does work for the projects beyond the ruby level. 
- For some ruby, cucumber testing tool is like a bridge to go to the target language. 
- For other, gherkin parser still continues to be relevant while they use the target language for the implementation purpose.
- There are certain feature documentations that are created in business – facing text and these can also be executed with the help of cucumber testing tool. 
- Features might be defined using one or more than one scenarios. 
- These are executed using the ruby definition of the test implicit comprising of few steps. 
- For the ruby tool box, the cucumber testing tool proved to be the most popular testing frame work in the month of January 2012. 
- The leading frame work was RSpec. 
- In the same year in the month of April, the cucumber testing tool was moved to a category of the acceptance test frameworks. 
- A survey was carried out which revealed that cucumber testing tool stands 5th in the ranking of the popular testing frameworks being used by the startup companies.
- Cucumber is just an implementation of the behavior driven development based up on ruby.
- Using it, the user can describe how the system behaves with some natural language comprising of some specific keywords. 
- Firstly, a feature file is created explaining a feature of the software system or application as well as certain scenarios pertaining to a number of different test situations. 
- Secondly, step definitions are written in ruby programming language that explains the purpose of that particular step. 
- Writing those definitions in ruby language provides flexibility in the execution of the test cases. 
- The testing tool comes with definitions for an acceptance testing tool called webrat. 
- This tool can be used for simulation of the browser not having javascript support. 
- It also provides option for making a combination with water that is a web automation frame work and is used for implementing the web automation tests based up on web browser.
- Using cucumber, with this combination counts as a traditional way of using it but anyways it works quite well. 
- In testing using cucumber, a feature is tested against a number of test scenarios that might describe several operations. 
- The step definitions part needs to be explained so that the tool knows what it has to do next. 
- In some of the cases, water is used with water – web driver gem and Rspec gem. 
- Constants can be defined as a reference to the browser and for web.
- Hash PAGES is not required in every case but proves to be beneficial when there are a number of pages involved. 
- The tests thus developed can be executed either when the full web site is ready or during the implementation phase itself. 
- Even if you decide to go with the second option, you will have to run the test one more time when the next release goes out. 
- You have a third option i.e., for using the test as a stand – alone set for the web site. 
- Another plus point of the cucumber testing tool is that it displays in quite a formatted way that displays steps that were both successful and failure. 
- Green color is used for displaying successful steps and red is used for the failed ones. 
- All that has been described for the cucumber implies for the water web testing frame work also. 


Monday, November 26, 2012

How to add and match defects in Test Director?


Location of the defects and their effective repair forms an inseparable part of the application development and indeed of the test director testing process. Defects can be submitted by almost everyone involved with the development process such as the developers, end users and of course testers. The test director eases all the testing processes and thus defects can be submitted through it and can be tracked until they are appropriately repaired. 

In this article we shall discuss the following two things:
  1. Adding defects in the test director and
  2. Matching defects in test director

Steps in adding defects in Test Director

Whenever a defect is submitted to the test director it is processed through the following  four stages:
  1. New
  2. Open
  3. Fixed
  4. Closed
Addition of the defects to the test director can be carried out at almost any stage of the test process. Below we state the steps that you need to follow in order to add the defects in test director:
  1. Open the test director project with which you are concerned and log on to it.
  2. Next step involves displaying the defects module by clicking on the defects tab. The defect data will be displayed by the defects grid in a grid where each row is a representation of an individual defect record.
  3. Clicking on the add defect button will open up the ‘add defect’ dialog box. The fields displayed in red color are mandatory to be filled up.
  4. Fourth step involves describing the defect by providing the following details:
a) Summary: i.e., what problem the defect actually caused.
b) Category
c)  Severity
d) Subject
e) Detected in version
f) Description:
It includes the part of the code where the defect was discovered and 
what problem was actually encountered.
  1. Now you need to attach the URL address for the page where the defect was found by clicking on the Attach URL button. Clicking on that button will open up a attach URL dialog box. There type the address of the page and click OK. This URL will be displayed above the description box by the test director.
  2. Next run a spell check for the text in the description box. If any errors are found follow the replacement suggestions.
  3. Click on the submit button to submit the defect to the test director project.
  4. Finally, close the add defect dialog box by clicking on the close button. The defect will be added to the defect grid.

How to match defects in Test Director

- The purpose of matching the defects is to find similar defects so that the duplicate ones can be eliminated from the project. 
-  Every time a new defect is added the list of keywords is stored by the test director from the description and summary fields. 
-  The stored keywords are then used for matching the defects. 
- Articles, coordinate conjunctions, wildcards and Boolean operators are ignored by the test director while matching the two tests. 
- Below mentioned steps are for matching defects in test director:
  1. Like for adding the defects this also requires displaying the defects module. Do this by clicking on the defects tab.
  2. From the defects grid select the one you want to match. If in case you cannot find the required test search it using the clear filter/ sort button.
  3. Now click on the find similar defects button to find similar defects. The results will be displayed in the similar defects dialog box by the test director.The defects are searched based up on percentage of the similarity detected.
  4. Finally, click on the close button to close the similar defects dialog box. 


Monday, November 5, 2012

What is keyword driven testing framework and methodology?


Keyword driven testing is one of the testing methodologies which is gaining popularity in the area of the test automation. Well, in this article, we are going to discuss regarding the frame work and methodology of the keyword driven testing. 

What is Keyword Driven Testing?

- The key word driven testing methodology is actually dependent on frame work. 
- It depends on such a frame work that calls for the development of the key words and data tables.
- But there is one condition which is that it should be independent of the test automation tool which is to be used for their execution. 
- Another condition is that it should also be independent of the test script code which is used to drive the application under test or AUT as well as the data. 
- In this testing methodology, the functionality of the application under test or AUT need to be documented in a table. 
- Also, the functionality needs to be stated as in step by step instructions for each and every test. 
- This then actually becomes a frame work approach for creating automated regression tests. 
- The frame work approach thus obtained proves to be successful in achieving many benefits of the automated testing when compared to the traditional methodology for capture and playback of the custom scripts. 
- Whenever automated testing is required, two sets of requirements come in to existence namely:
  1. Business Requirements: This category included the following requirements:
a) Maintainability: The maintenance of the tests should be easy as well as there should be a minimum need for updating scripts with changes made to the application and newer versions.
b) Selective testing: Less requirement of in depth testing. Also it should be easy to select test scenarios for a much targeted regression.
c) Recovery: It should be possible for the test suite to resume testing from the point where it failed or crashed at a later point of time. The need for re- testing the functionality should be eliminated.
d) Scalability: For gaining the time efficiency the execution of the tests from different machines at the same time should be possible.
e) Inter environment portability: All the environments must support the test scripts without making nay changes to them.
f)   Usability: Minimal amount of training must be required by employees to learn to execute the automated suite. There should be no manual intervention in the execution of the scripts.
g) Reporting: The status of each test script must be known easily.

  1. Technical requirements: This category includes:
a) Data abstraction: There should complete isolation of the test data for the execution of the scripts from the actual script code.
b) Separation of concerns: Concerns at each layer must be addressed by the distinct layers of the architecture.
c)  Portability

Methodology of the keyword driven testing lies in two different phases namely:
  1. Planning phase and
  2. The implementation phase
The planning phase involves the analyzation of the application and determination of operations and objects to be used in the business processes. The requirement of customized keywords is determined for the following purpose:
  1. Additional functionality
  2. Business level clarity
  3. Maximizing efficiency
  4. Maintainability
The second phase i.e., the implementation phase operates around a collection of objects or references usually known as repository which saves the info for unique identification of the objects. This phase also involves the development and documentation of the keywords of the business level in function libraries. Development of customized functions is required for the creation of the functional libraries. This is all done for the application under test or AUT.
The methodology of the keyword driven testing calls for more advance planning and time investment.


Thursday, March 15, 2012

What are different kind of browser bugs?

It is a universal fact that every thing in this world is infected with some discrepancies. So does it hold well for the web browsers! This article is here to discuss about the bugs associated with the web browsers.

Till date so many bugs of the web browsers like Mozilla, internet explorer, Netscape, opera and so on have been discovered. Let us check out some of the prominent errors:

Multiple browsers bugs


Bugs discovered under this category are:

(a) Font variant ligatures are not implemented by most of the bugs. The font module level 3 of the CSS defines the property of the font variant ligatures to specify the use of ligatures. Till now no such browser has been developed that supports this property fully.

(b) Font weight is not implemented consistently by the browsers. This font weight property of CSS lays down the specifications regarding the numeric values and key words.

(c) Data tables are not managed properly by the browsers. Most of the table properties are not supported by the browsers.

(d) Layout affected by outlining property.

(e) Styling legend tags

(f) Bugs in Mozilla Firefox
Styling is not applied and problems have been experienced with the horizontal scroll bar.

(g) Bugs in Internet Explorer
When the cursor is hovered over some elements, they did not work properly with the forms; the left origin of the positioning coordinates is incorrectly set.

(h) Bugs in Opera
&rsquo and &isquo entities were not recognizable by the opera, but this was later fixed in the 8th version.

(i) Bugs in Safari
These crashes were reported when : hover :: after was used.

(j) The borders separating the head and the body sections are often placed incorrectly by the opera.

(k) Multi-column ordered list remembering.

(l) Backgrounds show through invisible tables.

(m) Buttons with images cannot be aligned with those having only text.

(n) In some browsers even the fixed elements align along with the adjacent elements.

WHAT CHALLENGES ARE FACED WHILE DEVELOPING A WEBSITE

- When you start developing or designing your web sites choose carefully between the CSS and HTML.

- Don’t go for such an advance version of the languages because if you did then you may run in to the problems with the incompatibility of the browser.

- There is so much of competition going around the whole software market.

- The browser developers are releasing new browsers at very fast pace without even testing them properly which then becomes a headache for the web site designers.

- The new languages being used today like HTML 5 and CSS 3 are now gaining very much popularity though they are pretty much complex then their preceding versions.

- Number of features to be implemented is quite huge which is the major cause of the bugs.

- Whenever you come across a bug, do not forget to report it since it may be so very rare that nobody else would have stumbled up on it.

- One thing you should always remember is to keep the problem in the reduced form as much as possible.

- For doing this you an simply make up a copy of the code and from that remove the java script or CSS files one by one and ultimately you’ll come at a point when the problem will go away.

- Now you add that file and remove the others from the ones that you did previously.

- If you find that the bug is now going away even after removing all the files then it is likely that the bug lies in HTML coding.

- Now after you know that which aspect houses the problem, you need to locate that file or code.


Tuesday, June 28, 2011

What are Search Engine Positioning, Organic Search Engine Optimization?

Search Engine Positioning (SEP) includes:
- defining the business,
- set the targets,
- translating the business definitions into search phrases,
- structuring site around search phrases,
- designing pages to attract traffic,
- submitting site to directories and search engines and,
- linking site from other sites and monitoring the results.

Search engine positioning is actually the exact keywords and key phrases or search terms used that your prospective customers will typically write in the search box when looking for a particular product or service.

Organic search engine optimization is a process which improves the unpaid listings of the website in search engines. It involves the optimizing the website in natural way both on page and off page. The benefits of organic seo are:

- Organically optimized websites are often clicked by people. People tend to click on sites that are shown as part of results, not those that are shown as paid results (and search engines also differentiate between them).
- Organically optimized website search results lasts long. A paid result (or where some sort of short term strategy is applied will fail the next time the search engine logic is changed, or the money runs out). If the site makes it because of its own worth, it will only keep increasing in search engine ranking.
- Organically optimized website search results builds greater trust. Putting real and relevant content ensures that your readers will bookmark your blog, share your blog, and trust you more.
- Paid listings are more expensive than organic seo search results. For sites where you want to rank high, it is likely that paid clicks are very expensive, and trying to get more visitors through this route can be expensive.


Monday, June 27, 2011

What are different search engine optimization techniques?

Search Engine Optimization increases your website's appearance in search results. SEO techniques are tasks that would be performed by a Search Engine Optimization Company, when employed by a Client who desires high search engine positions to attract targeted traffic, with the intention of increasing their conversion rates and brand awareness.

- The search engine optimizer should have a long term outlook as SEO algorithms are changing.
- Patience is very important in SEO job and having a proper knowledge of the SEO company is also important.
- Build a good website with good and unique content.
- Site map should be included which tells the hierarchy of the site.
- The URLs should be SEO friendly.
- Select proper keywords and keyword density.
- The page title and meta tags for the page should be unique.
- Pay per click account should be opened.
- Write, keeping in mind and targeting the users.
- Keywords should be used as anchor text which helps to find out what the linked page is about.
- The links should be built intelligently.
- Participate with other blogs.
- Indulge yourself with social media sites and marketing intelligently.
- Links should be appropriate and avoid excessive linking.
- Develop relationships with other sites.


Wednesday, June 15, 2011

What are key elements of Search Engine Optimization Part 2?

Apart from keyword analysis, other important elements of search engine optimization are:

- Page uses HTML links. These HTML links needs to be optimized and is an important element of search engine optimization. The HTML code should consists of search items which tells the search engine what is the page about. The following things should be optimized like page title, page headings, image text and link anchor text.
A good page title will not only be keyword targeted but also will entice a person to click on it in the search results.

- For good search engine optimization, good page content is also important. The content should be of high quality and unique. It should not be copied from other sites. A god content enhances the search.

- The code enhancement process determines your page rank on search engines. It understands the structure or pages of the website.

- Link building becomes very important for search engine optimization. It improves the ranking of the web page or web site.


Tuesday, June 14, 2011

What are the important elements in search engine optimization Part I?

SEO web design is one of the most appropriate strategies to keep the competition.
A successful search engine optimization has few important elements includes a well targeted keyword focus, strong page element optimization and good quality content.

Keywords are most important element for search engines. These keywords are what search strings are matched against.The most crucial step is to find the correct keyword that can be used to optimize.

- Choosing the right keyword to optimize. It is best to focus on less competitive and highly specific keywords. The keyword should have the property of describing what is the purpose of your website. Also, check whether these keywords are relevant to your website or not.

- The website should be rich in keywords and have good keyword density. It is a measure to judge how relevant is the page.Keeping 5 to 10 keywords is termed as OK keyword density. Keyword stuffing should not be practiced.

- Quality of keywords and their position on the seb page is also very important. Keywords that appear in the heading, title are more effective than the keywords that are placed at the bottom.

- A balance has to be there between url keywords and site usability.
- The contents of page title tag are displayed during search so this is the special place where keywords can be given.

- From an SEO point of view, it is good to have as many headings with good keywords in it. The headings should not be very long as readability becomes difficult.


Saturday, September 11, 2010

Keyword-driven Testing - Anatomy of a Successful Automated Testing Framework

Key-word driven test automation also commonly known as Table Driven test automation is typically an application-independent automation framework.
Keyword-driven testing is a technique that separates much of the programming work from the actual test steps so that the test steps can be developed earlier and can often be maintained with only minor updates, even when the application or testing needs change significantly. In key-word driven testing, keywords are actions which are nothing but the tasks to be executed in a test.
A keyword-driven test, the functionality of the application-under-test is documented in a table as well as in step-by-step instructions for each test.

Base requirements of Keyword Driven Testing are:
- Test development and automation must be fully separated.
- Test cases must have a clear and differentiated scope.
- The tests must be written at the right level of abstraction.

Test creation in keyword-driven testing is divided into two stages:
- Planning Stage which includes determining the objects and operations to test and to determine customized keywords.
- Implementation Stage includes building object repository and develop keywords in function libraries.

Concepts of Keyword-driven testing are:
- Keywords such as click, enter and select.
- Business templates such as login and enter transaction.
- Action Words, or short "Actions".

Benefits of keyword driven testing are:
- It is appropriate for non-technical staff.
- Re-usability.
- Maintainability.
- Data-driving capability.
- Eligible to test-first programming.

Keyword-driven testing should improve test management with easy test case writing, editing and sharing and with no programming required. Design test cases earlier in the development process so you can find and fix defects sooner and reduces the testing efforts and cost effective.


Sunday, July 18, 2010

Test Script Languages (TSL)

Test Script Language(TSL) is a scripting language with syntax similar to C language. TSL is the script language used by WinRunner for recording and executing scripts.

Features Of TSL :
- The TSL language is very compact containing only a small number of operators and keywords.
- TSL is a script language and as such, does not have many of the complex syntax
structures you may find in programming languages.
- On the other hand, TSL as a script language has considerably less features and capabilities than a programming language.
- Comments : Allows users to enter human readable information in the test script that will be ignored by the interpreter.
- Naming Rules : Rules for identifiers within TSL.
- Data Types : The different types of data values that are supported by the language.
- Data Storage : Constructs that can be used to store information.
- Operations : Different type of computational operations.
- Branching : Avoids executing certain portions of the code unless a condition is met.
- Loops : Repeats execution of a certain section of code.
- Functions : Group of statements used to perform some useful functionality.

There are four categories of TSL functions. Each category of functions is for performing specific tasks. These categories are as follows:
- Analog Functions
These functions are used when you record in Analog mode, a mode in which the exact coordinates of the GUI map are required. When you record in Analog mode, these functions are used to depict mouse clicks, keyboard input, and the exact coordinates traveled by the mouse. The various analog functions available are Bitmap Checkpoint Functions, Input Device Functions, Synchronization functions, Table Functions, Text Checkpoint Functions.
- Context Sensitive Functions
These functions are used where the exact coordinates are not required. In Context Sensitive mode, each time you record an operation on the application under test (AUT), a TSL statement is generated in the test script which describes the object selected and the action performed.
- Customization Functions
These functions allow the user to improve the testing tool by adding functions to the Function Generator. The various customization functions are custom record functions,
custom user interface functions, function generator functions and GUI checkpoint functions. Different context-sensitive functions are Active Bar Functions, ActiveX/Visual Basic Functions, Bitmap Checkpoint Functions, Button Object Functions
Calendar Functions,Database Functions, Data – driven test Functions,GUI related Functions etc.
- Standard Functions
These functions include all the basic elements of programming language like control flow statements, mathematical functions, string related functions etc. The various standard functions are arithmetic functions, array functions, call statements, compiled module functions, I/O functions, load testing functions, operating system functions, etc.


Facebook activity