Saturday, June 13, 2009

Revolutionary Testing Tools for AJAX Applications

Revolutionary Testing Tools for AJAX Applications

A few years ago, we used JMeter to try and load test a chat application we were building. Since the chat application used Comet and AJAX, I knew that the JMeter test was going to be grossly inaccurate. However, we did the best we could with tools that clearly weren't right for the job, as nothing was out there that could simulate an AJAX or Comet load test.

A few weeks ago, while working with some other consultants on a project, we discussed the use of Selenium to run some functional testing on a Firefox Extension that inserts signatures into an email. We needed a tool that could automatically send an email using Gmail, Yahoo, and Hotmail, and verify that the signature was still injecting. From my days writing HTML Reply Signatures for Gmail, I knew that this was indeed important, as any change by these third parties could have a drastic effect on the tool's ability to insert a signature.

Today, one consultant and I worked to try to insert an email address into the "To" field of the Gmail Compose window using Selenium. I've done this already in the Firefox extension, and anyone who has ever written a Greasemonkey script or Firefox extension that works with Gmail 2 can attest that this is not always an easy task if you are working outside of the API exposed by Gmail. Google engineers have put lots of effort in writing server-side code that ensures that all the id attributes in the Gmail application randomly change each session. Their creativity has sparked our creativity, and we have solved this problem. With enough time and patience, any problem can be solved.

Anyway, with Selenium, one must locate elements in the HTML of a web application by using XPATH queries. Armed with my trusty Firebug tool, I inspected the element in question and worked my way up the tree one element at a time, writing down the element tag names and positions at each step. Like a complex code, we ended up with long XPATH queries, a seemingly endless series of div[1]/div[2]/div[1]/div[1]. Although I would have preferred to just use JavaScript and a good for loop or regular expression to locate what I wanted, being a code cracker and approaching this problem from another angle was an eye-opener, XPATH is perhaps the way to go!

So that's a little background on my experience so far with testing tools. Selenium isn't a load testing tool of course, but it's a great tool to automate functional testing. It's almost like a macro recorder, similar to iMacros. Our plan is to set our test up on a VMWare image and configure this to run automatically every day. We'll get emails with our signature if it's successful, and broken or no email if it's not successful. We're also configuring it to be really loud and obnoxious if it does detect that something is amiss, just so we don't gloss over the automated emails.

Selenium can do functional testing, but what about load testing? Sure, Selenium can do load testing as well! Selenium uses real web browsers in testing, but it's up to the person doing the tests to go out and purchase the hardware to run the tests. In other words, if you want to do a 100 user load test with Selenium, you need to have 100 computers in your lab and 100 people to all click "Run" at the same time.

This is analogous to a symphony with you as the conductor who tells everyone exactly when to click "Run Test".

Of course, coordinating such an event can be costly, so one of the developers of Selenium Remote Control founded BrowserMob. BrowserMob solves this issue by providing the hardware. They claim to load test your web application using Selenium scripts and N number of real web browsers! I would be really interested to know how this was accomplished and how the costs have been kept so low.

To start, they probably use VMWare and Linux, which is one way to reduce the amount of physical hardware while still trying to simulate real hardware. They say they use Firefox 3.0, which is available on Linux. Finally, if Selenium Remote Control launches Firefox browsers to simulate functional tests, then my guess is BrowserMob is controlling a series of Selenium Remote Control instances, all running on VMWare Linux machines, and allowing BrowserMob to monitor the load.

While there are some costs associated with BrowserMob, I imagine one could use Selenium Remote Control installed on several VMWare images to run a small load test. If anyone has experience with either Selenium Remote Control or BrowserMob, I'd love to hear your thoughts on the two products!


hadoop training in chennai said...

Grateful for hadoop training in chennai your enlightening post on selenium mechanization oracle Training in chennai testing contraption. Your article helped me a mind blowing plan in comprehension the fate of robotization hadoop training in chennai testing instrument and its occupation prospects

Unknown said...

Hi friends, This is Jamuna from Chennai. Your technical information is really useful for me. Keep update your blog.
Oracle Training in Chennai

Unknown said...

Thanks for sharing your innovative ideas..Its really useful and interesting...


Salesforce Administrator Training in Chennai

Unknown said...

Java is one of the popular technologies with improved job opportunity for hopeful professionals. Java Training in Chennai helps you to study this technology in details.If you are looking for best Java Training Institutes in Chennai reach Fita academy.

Anonymous said...

Hi, Your blog is really very informative and useful for me. Thanks for sharing this valuable blog.
Unix Training

Unknown said...

Really awesome blog. Software testing is a method of executing the application or program with the intent of searching the software errors. Software Testing Training in Chennai offering this course at reasonable cost.

Unknown said...

Thanks for sharing your ideas. It’s really useful for me. Selenium is an automation testing tool used for web applications. I did Selenium Training in Chennai at besant technologies. It’s useful for me to make a bright career in IT industry. For more details visit Selenium Training in Chennai.

Unknown said...

Interesting and worth able content is discussed here. The fact about current technology is explicitly stated over here. I do agree on your thoughts on how the influencers are taking advantage over emerging technology. Thanks for sharing this in here. Keep bloging like this.

Hadoop Course in Chennai | Big Data Training | Big data training

Unknown said...

The Information which you provided is very much useful for Testing Training Learners Thank You for Sharing Valuable Information.
Software Testing Training in Chennai | Software Testing Training in Chennai

Unknown said...

Thank you for this brief explanation and ver nice information. well, got a good knowledge. Have a nice idea, this is more helpful to me. This can gives the better performance.
Hadoop Training in Chennai

Unknown said...

Thanks a lot for letting me a chance to visit your any pointers. Your article about web design is really impressed me very much.Buzz Apps

Unknown said...

This theory of Selenium looks great to learn. Professional SEO Packages

hadoop training in hyderabad said...

revolutanary post thanks for sharing..
Hadoop training in hyderabad.All the basic and get the full knowledge of hadoop.
hadoop training in hyderabad

Unknown said...

Thanks for splitting your comprehension with us. It’s really useful to me & I hope it helps the people who in need of this vital information.
Performance Tuning Training in Chennai | Oracle PL/SQL Training in Chennai

Unknown said...

great blog keep sharing

Best Selenium Training Center in Chennai | Best Automation Testing Training in Chennai | Best selenium training and placement in chennai | Selenium Training in velachery

Gopi said...

Great to know about the Revolutionary Testing Tools for AJAX Applications. I'm have been waiting for a long time. Thanks :)
Selenium training in Chennai |Best Selenium training institute in Chennai

aliisajoseph said...

We Reduced the batch size to make our training more interactive, well structured & timing too made more flexible for students convenient.
Android Training in Velachery |
Android Training in Anna Nagar |
Android Training in Velachery |
Android Training in Chennai |

Unknown said...

Wow. It is sounds good to hear about java. You have given wonderful suggestion and guidance about java. thanks for posting your comprehensive tactics about java.
java training in chennai

Unknown said...

hi welcome to this blog. really you have post an informative blog. it will be really helpful to many peoples. thank you for sharing this blog.
java training in chennai

Unknown said...

Nice tips for someone new into the world of java. Really great tips and finally definitely will help to develop a program in java.
java training in chennai

Unknown said...

hi welcome to this blog. really you have post an informative blog. it will be really helpful to many peoples. thank you for sharing this blog.
java training in chennai

vigneswaran said...

I really appreciated to our blog site information Thank you so much for this article here. Truly it is an astounding article I had ever learned.Thanks for sharing this informative content that guided me to know the details about the training offered in different technology.
Dot Net Training in Chennai | Dot Net Training Institute in Chennai | Dot Net Training with Placement in Chennai

Priya B said...

This is really a great post. Thank you for taking time to provide us some of the useful and exclusive information with us. Keep on blogging!!

Android Training Institute in Chennai

Unknown said...

Your Java blog has explained the concepts clearly with suitable examples. Many programming languages have evolved but Java is still in NO:1 position due to its great features.


JAVA J2EE Training in Chennai |
JAVA Training Institutes in Chennai

Ishu Sathya said...

The way you have explained the Big Data concept is really superb! I have never come across such a informative blog in my career. Nowadays, Hadoop course is in high demand by most of the professional to enhance their career.


hadoop training in velachery |
big data training in velachery

Unknown said...

Good and first-rate blog post, thanks for sharing your facts.. It's miles very useful to me seo training in Chennai

Divya Kannan said...

Thanks for the article :)

- Divya,
Kamal Technologies - Best React JS training institute in Chennai

Anonymous said...

Thanks for this article....

QTP Tutorial

Unknown said...

Nice Blog, Thanks for sharing this valuable one. This very useful for me and gain more information.

Selenium Training in Chennai

Unknown said...

Thanks For Sharing Valuable Information, Very Useful For U Mulesoft Certification Training

Aman CSE said...

I get a lot of great information from this blog. Thank you for your sharing this informative blog.AWS Training in Chennai

Unknown said...

Also it is good to know that,
Credo Systemz, Velachery/OMR is the best Amazon Web Services Certification Training ranked by more than 2000+ certified candidates all over India. Our Amazon Web Services® training program includes all the important services to do your aws certifications easily.

Quick Links:

aws training in chennai with placement| aws authorized training partner in chennai|aws solution architect training in chennai

24Layouts said...

Thanks For Sharing this Article....

Plots for Sale in Vizag

Mirnalini Sathya said...

Thanks for sharing useful information with us. I have followed the instruction and worked perfectly.
Selenium Training in Chennai
Best Selenium Training Institute in Chennai
ios developer training in chennai
Best ios Training institute in Chennai
Android Classes in Chennai
App development course in chennai

mercyroy said...

More informative,thanks for sharing with us.
this blog makes the readers more enjoyable.keep add more info on your page.
Cloud computing institutes in Bangalore
cloud computing courses near me
Cloud Computing Training in Nungambakkam
Cloud Computing Training in Kelambakkam

pavithra dass said...

Thanks for splitting your comprehension with us. It’s really useful to me & I hope it helps the people who in need of this vital information.
CCNA Training in Chennai
DevOps Training in Chennai
DevOps foundation certificate
DevOps institute certification
CCNA institute in Chennai
CCNA Training center in Chennai

akshaya said...

This technical post helps me to improve my skills ,thanks for this wonder post I expect your upcoming blog, so keep sharing...
Spoken English in Chennai
Best Spoken English Institute in Chennai
English Coaching Class in Chennai
Best English Coaching Center in Chennai
English Coaching in Chennai
English Coaching Centre in Chennai
English Courses in Chennai

Unknown said...

It is very excellent blog and useful article thank you for sharing with us, keep posting.

Spoken English Course in Chennai
English Speaking Course in Chennai
Spoken English Training center in Chennai
Spoken English Classes in Anna Nagar
Spoken English Training in Velachery
Spoken English Training in Tambaram
Spoken English Training in Adyar

Unknown said...

More informative,thanks for sharing with us.
this blog makes the readers more enjoyable.keep add more info on your page.
best software testing training institutes in bangalore with placements
Software Testing Training in Mogappair
Software Testing Training in Vadapalani
Software Testing Training in Kelambakkam

kimjhon said...

I have to thank for sharing this blog, it gives lots of information to me. Keep sharing more like this.
UiPath Training Institutes in Chennai
UiPath Courses in Chennai
RPA courses in Chennai
Blue Prism Training in Chennai
ccna Training in Chennai
Machine Learning Course in Chennai

Anbarasan14 said...

Thanks for your efforts in sharing this effective tips to my vision. kindly keep doing more. Waiting for more updates.

English Coaching Classes in Chennai
Best Spoken English Institute in Chennai
Spoken English Course in Chennai
Best IELTS Class in Chennai
IELTS Training Institute in Chennai
IELTS Coaching Classes in Chennai
IELTS Classes near me

mercyroy said...

feeling so good to read your information's in the blog.
thanks for sharing your ideas with us and add more info.
German Training Institutes in T nagar
Best German Training Institute in Anna nagar
german training in bangalore
german language centre in bangalore

aruna ram said...

Your blog is very creative and very helpful for me. I feel thanks to you for posting such a good blog, keep updates regularly..
SEO Training in Tnagar
SEO Course in Nungambakkam
SEO Training in Saidapet
SEO Training in Sholinganallur
SEO Course in Navalur
SEO Training in Kelambakkam

mercyroy said...

This blog is more effective and it is very much useful for me.
we need more information please keep update more.
AWS Training in Saidapet
AWS Training in Ambattur
AWS Certification Training in Bangalore
AWS Certification Training

Unknown said...

Thanks for the useful stuff....Just News To U 99

LindaJasmine said...

Awesome Post. Your writing is very unique. The choice of words stood as an exemplary piece of work. Thanks of sharing.
Html5 Training in Chennai
Html5 Courses in Chennai
Html5 Training
Html5 Course
Html5 Training Course
Html5 Training for Beginners
Best Html5 Course
Best Html5 Training said...

Awesome Post. Great content. Thanks for sharing.
Node JS Training in Chennai
Node JS Course in Chennai
Node JS Advanced Training
Node JS Training Institute in chennai
Node JS Training Institutes in chennai
Node JS Course

dinesh said...

I believe that your blog will surely help the readers who are really in need of this vital piece of information. Waiting for your updates.
Selenium Training in Bangalore
Selenium Training Institutes in Bangalore
Python Training Institutes in Bangalore
Python Institutes in Bangalore
Python Coaching in Bangalore

Anoushka Sakthi said...

Its my great pleasure to be here on your article!! for sure ill be back to read the next blog of yours.

Selenium Training in Chennai
Selenium Training
iOS Training in Chennai
French Classes in Chennai
Big Data Training in Chennai
cloud computing training in chennai
Cloud Computing Courses in Chennai

Vicky Ram said...

Thanks for sharing this valuable information.Its more useful to us.its very interesting to know the blog
with clear vision.

Article submission sites

jvimala said...

Its is good and very informative. I would like to appreciate your work. clearly explained
Best Machine Learning Institute

menaka13 said...

Good post with bags of information. Thanks for sharing with us.

Selenium Training in Bangalore

jack said...

Your blogs are easily accessible and quite enlightening so keep doing the amazing work guys.

Aparna said...

Good work and you are putting the effort is very great. This post is having clear content about this topic and I hope more valuable post from your innovative blog. Keep it up...
Oracle DBA Training in Chennai
oracle apps dba training in chennai
Spark Training in Chennai
Oracle Training in Chennai
Linux Training in Chennai
Social Media Marketing Courses in Chennai
Primavera Training in Chennai
Unix Training in Chennai
Power BI Training in Chennai
Tableau Training in Chennai

Nisha San said...

And indeed, I’m just always astounded concerning the remarkable things served by you. Some four facts on this page are undeniably the most effective I’ve had.
cloud computing courses in chennai | cloud computing training in chennai | cloud training in chennai | cloud certification in chennai | cloud computing classes in chennai

akalya said...
This comment has been removed by the author.
raju said...

nice post thanks for sharing...!
inplant training in chennai
inplant training in chennai for it.php
panama web hosting
syria hosting
services hosting
afghanistan shared web hosting
andorra web hosting
belarus web hosting
brunei darussalam hosting
inplant training in chennai

shiv said...

inplant training in chennai
inplant training in chennai
inplant training in chennai for it.php
algeeria hosting
angola hostig
shared hosting
bangladesh hosting
botswana hosting
central african republi hosting
shared hosting

shree said...

very nice....
inplant training in chennai
inplant training in chennai for it.php
namibia web hosting
norway web hosting
rwanda web hosting
spain hosting
turkey web hosting
venezuela hosting
vietnam shared web hosting

preethi minion said...

inplant training in chennai
inplant training in chennai
inplant training in chennai for it.php
italy web hosting
afghanistan hosting
angola hosting
afghanistan web hosting
bahrain web hosting
belize web hosting
india shared web hosting

Lopa said...

Read all the information that i've given in above article. It'll give u the whole idea about it.

Python Training
Digital Marketing Training
AWS Training
Selenium Training
Data Science Training
DevOps Training

Theverge said...

Very interesting blog. Many blogs I see these days do not really provide anything that attracts others, but believe me the way you interact is literally awesome.You can also check my articles as well.

Rowe Rowe
Manager Rowe Rowe
Rapper Rowe Rowe

Thank you..

deiva said...

The Information which you provided is very much useful for Testing Training Learners Thank You for Sharing Valuable Information.
sap training in chennai

sap training in omr

azure training in chennai

azure training in omr

cyber security course in chennai

cyber security course in omr

ethical hacking course in chennai

ethical hacking course in omr

chandhran said...

Thanks for your excellent article. It is so good to read a new article.
thread concept in java
control structures in java
string manipulation in java
data types in java
oops concepts in java
software testing interview question and answer

Aishwariya said...

Thanks for Sharing a Very Informative Post & I read Your Article & I must say that is very helpful post for us. Primavera P6 Certification Training in Chennai | Primavera Training in India

Beel Khan said...

This is completely powerful software that helps it’s users in mainstream. The features of Windows 8 are totally amazing and they works very well.

Cyberz Pc said...

Every step of my life has been memorable and awesome since we met. I love you will all my heart. Good morning my love. My sweet love, you are my everything Website

Sherry said...

You may design cards of any level of sophistication with the free download version of Zebra CardStudio, which features an intuitive user interface. CardStudio makes it simple to create and print your own personalized greeting cards.

Hurrain said...

Thanks for giving me a place to find good information and ideas and for making it look so nice.

Kajal Rai said...

The writer shares experiences using Selenium for functional testing, detailing challenges faced in automating Gmail-related tasks. They praise Selenium's automation capabilities but express limitations in load testing due to hardware requirements. They mention BrowserMob's solution for distributed load testing using Selenium. The comment acknowledges the informative insight provided into Selenium's usage for both functional and load testing, highlighting its benefits and the potential of BrowserMob's approach for efficient web application testing.

Ultimate Data Analytics Training Course

Rupesh kumar said...

Really a awesome blog for the freshers. Thanks for posting the information. Discover the world's best GCSE home tuition with Ziyyara Edutech! Our dedicated GCSE online tuition is designed to empower students with exceptional educational support.
For more info visit GCSE home tuition