Category Archives: Web Testing

How We Test Web Browsers

Lifehacker regularly runs browser speed tests to see which browser runs the fastest in real-world situations. This is how we currently test browser performance.

We run our tests on a desktop PC with an i7 processor overclocked to 3.8 GHz and with 12GB of RAM. The machine has a wired internet connection, which eliminates the unreliability of Wi-Fi. As such, our numbers very much represent a best-case scenario. The numbers on your machine will differ, but the relative performance differences are likely to remain.

Start-Up & Page Load Times
For the time-based tests, we measure “cold” start-up (just after reboot, with the browser not having run yet). We also test a browser’s ability to load multiple tabs at once (our test group of sites includes Lifehacker, Bing, Hulu, Amazon, Wikipedia, Facebook, MSN, YouTube and eBay). Each of these tests is measured by hand, starting a timer at the same time as the mouse is clicked for that specific task (such as launching the browser from the taskbar or opening all nine tabs at once from the bookmark bar).

At least three tests are done for each measurement on each browser, and an average taken from those three. Any obvious outliers (as in, 2.8 seconds, 3.2 seconds, 7.9 seconds) are removed and replaced. We test from the moment we launch the browser to the point where the browser window shows up for cold starts, not when the page shows up, since many people will start using the browser (clicking bookmarks, typing in an address) before their home page even appears. For the tab loading test, we wait until every page has loaded and the wheel on each tab has stopped spinning.

JavaScript & CSS
JavaScript and CSS performance are an increasingly important metric for browsers, as webapps become more powerful and more of our work moves into the cloud. Currently, we use Mozilla’s Dromaeo testing suite. No testing suite is perfect — browser makers can “write to the test” and today’s measurement metric might not provide an accurate picture of what makes tomorrow’s browser feel so snappy. Dromaeo combines tests from the two leading JavaScript proponents (Google and Apple), so it’s a reasonable if not perfect alternative. (There’s no evidence to date that Mozilla’s authorship of this testing suite has given Firefox any obvious advantage in the results.)

Memory Usage
To measure memory, we use Google Chrome’s about:memory function. As more browsers adopt multi-process architecture for stability and security, Windows’ measurement of memory used by browsers has become inaccurate. Chrome’s tool reports on itself, but also every other browser we’ve tested. (When measuring Chrome’s own memory usage, we subtract the memory used by the about:memory tab itself, to ensure it doesn’t artificially increase Chrome’s score.) We also let each browser sit for a while and wait for its memory usage to level out before measuring, since most browsers will initially keep accruing memory usage after loading.

Extensions
Most Lifehacker users will rely on extensions, so testing with them present is important. To measure the impact of extensions on memory use, we run our memory tests with five representative extensions for Chrome, Firefox and Opera:

  • Xmarks bookmark sync
  • LastPass password manager
  • AdBlock Plus
  • Gmail-based mail checkers: Gmail checker for Firefox, Google Mail Checker for Chrome, and Gmail Checker on Opera
  • InvisibleHand bargain hunter

Source:http://www.lifehacker.com.au/2013/01/how-we-test-web-browsers/

Did you like this? Share it:

10 Free Website Speed Test Tools

Website Speed Test Tools

Page Speed Insights

PageSpeed Insights analyzes the content of a web page, then generates suggestions to make that page faster. Reducing page load times can reduce bounce rates and increase conversion rates.

website-speed-testing-1

Website Speed Check

The website speedtester shows the duration of a given website. This value can be used for showing how long a website take to load and if it is better to optimize the website.

website-speed-testing-2

Neustar Web Performance

Test your website performance with this free cutting edge tool. This tool accesses your website from different location and generates a website performance analysis report.

website-speed-testing-3

PingDom

The Full Page Test tool to help you analyze the load speed of your websites and learn how to make them faster. It examines all parts of a web page, shows performance overview and you can also share the results with your friends.

website-speed-testing-4

Load Impact

Load test your website online. We offer load testing and reporting as an online service to e-commerce & B2B sites all over the world.

website-speed-testing-5

Which Loads Faster

Pages compete head-to-head in your browser to see who’s fastest!

website-speed-testing-6

Octagate Site Timer

Web Monitor allows you to monitor how long it takes for a user to download one or more of your web site pages.

website-speed-testing-7

Show Slow

Show Slow is an open source tool that helps monitor various website performance metrics over time. It captures the results of YSlow, Page Speed, WebPageTest and dynaTrace AJAX Edition rankings and graphs them, to help you understand how various changes to your site affect its performance.

website-speed-testing-8

Web Pagetest

Run a free website speed test from multiple locations around the globe using real browsers (IE and Chrome) and at real consumer connection speeds.

website-speed-testing-9

GTmetrix

GTmetrix uses Google Page Speed and Yahoo! YSlow to grade your site’s performance and provides actionable recommendations to fix these issues.

website-speed-testing-10

Source:

http://www.flashuser.net/resources/website-speed-test-tools.html

Did you like this? Share it:

Make Your Own Wi-Fi Hotspot – Testing Development Websites on Mobiles and Tablets

Often you need to test a website on an tablet device such as an iPad using a local development machine’s web server. For whatever reason the available Wi-Fi when developing your site may be on another subnet or network entirely to you development machine (such as in an office environment). Situations like these call for a bit of creative thinking and a different approach, so if this is a problem you face here’s my take on a possible solution.

My workplace has pretty strict networking arrangements in place as we work with Banks and government agencies. This is all well and good until you need to develop something for a mobile device and there’s no way to connect a smart phone or tablet to your development machine over the network/Wi-Fi. For the guys on our team this is caused by the network subnet that is served over our office Wi-Fi being placed in a DMZ without network access (we don’t want  our Reddit surfing clients in reception having access to our super secret stuff).

 imageObviously this causes my team and I a few productivity roadblocks.

Working with mobile and tablet websites carry there own set of problems and there is a range of tools available to solve many of these. Some involve device centric visual elements such as CSS (Adobe Shadow) and user agent detection (user agent switcher). Coming from a server side development angle I’ve also blogged before on how to sniff mobile device traffic for debugging web service traffic on mobile devices. However none of these solutions help solve the largest problem in productivity when it comes to locally developing and testing sites from a developers machine – and if you happen to work in a restricted environment like me and my team then the pain from this problem is a lot stronger.

With this in mind, speeding up your productivity in this areas leads to big gains. If you can avoid having to deploy your development site over and over just to test something small, then you’ve smashed it out of the park.

Don’t have Wi-Fi? Now you do!

The problem when boiled down is that you need to give the mobile device you are testing on wireless network access to your development machine’s web server. For people developing ASP.net websites this usually means IIS.

Now a lot of laptops and desktops these days come bundled with a wireless card as standard (this should give you an idea where I’m going with this), but up until Windows 7, Microsoft’s networking stack hasn’t really had the flexibility to do black magic with wireless cards in the ways that our Linux and OSX cousins have been able to. With the release of Windows 7 this changed – and with this a light bulb went off in the head of one of the developers now working for Connectify.

Connectifyimage

Connectify is a piece of software that enables a Windows PC with a Wi-Fi device to act as a wireless access point. This enables users to share an internet connection between multiple computing devices without the need for a separate physical access point or router.

This has a whole range of benefits (maybe you are in a hotel using their internet and want your phone or tablet to get access?) but what I’ll focus on here is using Connectify to test locally while developing websites.

It is extremely easy to setup, so lets take a look.

What you’ll need
  • A Windows 7 PC (assuming this is a given if you’ve read this far).
  • A Wi-Fi Card.
  • IIS Installed.
  • Your Visual Studio project setup to use IIS for testing.
  • Logged in as a user that has local admin rights.
Setting it up

I will use the Empty ASP.Net MVC Project template for this walkthrough simply for familiarities sake; this should work with any site you can run locally. Even ones hosted on another web server like *shock, horror* Apache or NGINX.

image

Firstly as housekeeping, you’ll need to setup a local IIS website that:

  • Accepts incoming requests on TCP Port 80.
  • Serves on all IP addresses (once Connectify is setup, you can get it to simply work on Connectify’s interface/IP Address).
  • Points at your website’s root directory (For ASP.net web sites this means the root of your website project.)

If you don’t want to install full blown IIS, you can get away with IIS Express instead.

First, download Connectify from here.

Run the installer.

When done you’ll be greeted by this screen, simply click continue.

image

You’ll then be asked whether you want to use the “Lite” or “Pro” version of Connectify. Select Lite as this is all we’ll need.

image

This will leave you with the panel on the right of the screen asking you to setup your HotSpot.

Enter a HotSpot name (the Lite version requires that the name starts with “Connectify-“), password (must be 8 characters or over), and then select the internet connection you would like to share.

Even if you don’t work in an environment where security is considered “critical”, make sure that you set a REALLY strong password. After all, you are setting up an additional way for people to get onto your network so this is a pretty big deal in an office environment. Check out Troy Hunt’s great post on passwords for easy ways to manage these.

For me, I am already on Wi-Fi as I’m writing this post on my laptop, but you may want to select a different connection to share – the interface you share doesn’t matter too much as you’ll only be accessing your local IIS installation; as long as you don’t have firewall rules setup on the interface you’ve selected stopping port 80 access you should be fine.

Then hit the “Start HotSpot” button.

image

Now on your mobile device, connect to your newly configured Wireless Access Point by changing the settings on your device’s Wi-Fi connection.

image

image

Now on your host machine, open a command prompt window and type “ipconfig” to pull up the list of interfaces on your machine. You should notice that you now have an additional Wi-Fi adapter – this is the virtual one created by Connectify to serve your devices. Take note of the IP Address listed, as this will be the address your site is hosted on.

image

Now enter this address in your device’s browser proceeded by “http://”. This is the IP address of your new virtual Wi-Fi adapter (mine was http://192.168.96.1).

image

If you have trouble getting this working (your device maybe sits there waiting for the page to load forever), then Windows Firewall or similar may be blocking the request. You can add IIS to the Allowed List by going to “Settings > System and Security > Windows Firewall > Allowed Programs” and ticking the box to allow IIS (World Wide Web Services (HTTP).

image

Special Note

When you have finished testing your local website, it is important to click the Stop Hotspot button in Connectify to turn off your newly created Wi-Fi access point. This will ensure that no evil doers can run any dictionary or rainbow table attacks on your machine while you aren’t expecting it (probably while you are at home over the weekend or overnight).

Summary

There are now a number of tools available to assist with testing sites on mobiles and tablets, but few tackle the problem at its source as well as this does: speeding up the rinse repeat of a developer test-deploy-modify cycle. Hopefully I’ve shown you a way to drastically reduce the time spent on this when working locally on your developer machine.

What tools do you use to help speed up mobile website development? I’d love to hear in the comments below.

Source:

http://www.diaryofaninja.com/blog/2012/04/15/make-your-own-wifi–testing-development-websites-on-mobiles-and-tablets

Did you like this? Share it:

Web testing with WAPT

While manual testers fail to test websites for performance, there are two reasons: they don’t have proper tools and they don’s have required skills for performance testing. Then how to succeed? The first thing you need to do is to ask for required tools and train your staff for necessary skills. The tool we will talk about here is called WAPT, which is short for Web Application Load, Stress and Performance Testing. It is a cost effective and easy to learn tool. It has some pros. It is easy to install, and easy to use with very short learning curve. Also you get run-time reports so that you can decide whether to continue the test or not. Meanwhile, it provides detailed test report with graphical representation, supports secure HTTPS protocol, and have 30 days free trial available.

Source: http://www.softwaretestinghelp.com/web-application-load-stress-and-performance-testing-using-wapt/

Did you like this? Share it:

China’s Baidu Testing New Web Browser

Baidu is the largest search engine in china. Recently this company is developing a new browser with the purpose of controlling the country’s Internet market. The browser is built to be integrated with the company’s search applications and has built it with the intention of protecting the user’s PC from malware implanted on infected websites.

However, China’s web browser market is currently dominated by Microsoft. About 83 percent of the country’s Internet populace uses Internet Explorer. The other top three browsers in China are all homegrown browsers developed by domestic Internet companies, such as Tencent’s TT each with shares ranging from 2 to 4 percent.

While Microsoft’s Internet Explorer maintains a hold over the Chinese market, over time the browser’s dominance will erode as other homegrown browsers gain a bigger following,

The Web browser market can still change, for homegrown browsers Seize the opportunity will win the market.

Source:http://www.pcworld.com/businesscenter/article/223453/

chinas_baidu_testing_new_web_browser.html

Did you like this? Share it:

Testing HTML Forms the Automated Way with WATIR

All but the simplest HTML forms typically have too many variations to be effectively tested manually. The ideal solution is test automation, an approach that allows you to run suites of tests and compare their results with your expected outcomes. (If like me you primarily develop PHP-driven websites, then one popular automated testing solution is PHPUnit. ) Besides the common unit tests, which determine whether individual units of source code operate as expected, you also should implement acceptance tests, which test the website from the user’s perspective.

But implementing acceptance tests means we’re back to square one, right? After all, somebody has to navigate the interface manually and perform tasks such as form completion and submission. That used to be the case, until automated acceptance testing solutions such as WATIR became available. Despite identifying itself as “Web Application Testing in Ruby,” WATIR can test websites powered by any language, PHP included.

In this introduction I’ll demonstrate WATIR’s impressive capabilities by showing you how to create acceptance tests capable of verifying the proper operation of those pesky forms I was complaining about.

Installing WATIR

WATIR is available as a Ruby gem, meaning you’ll need to install Ruby if it’s not already available on your system. Because Ruby’s installation process varies according to operating system, so you should check out the the official documentation.

When you have Ruby installed, install WATIR on Linux or OS X by executing the following command:

%>gem install firewatir

On Linux, you also need to install a Firefox-specific add-on. These add-ons are version-specific, with add-ons available for Firefox 2.x, 3.x, and 3.5. See the WATIR documentation for more information.

On Windows, use the following command:

%>gem install watir

Other versions of WATIR are also available for testing your website on Internet Explorer and Safari; check out the WATIR documentation for more details.

Testing Your Installation

You can verify that WATIR is installed correctly by entering the Interactive Ruby Shell and executing a few commands:

%>irb irb(main):001:0>require 'rubygems' ==> true irb(main):002:0>require
'watir' ==> true irb(main):003:0>b = Watir::Browser.new

Executing this last command should actually result in a new instance of your browser being started! Return to the terminal and execute the following command:

b.goto http://www.developer.com

Your newly-opened browser should respond by navigating to Developer.com. This ability to script browser actions is indicative of WATIR’s capabilities. But it can do so much more, read on to see a real-world example.

Testing an HTML Form

Suppose you wanted to perform an acceptance test of a login form. If the login is successful, the user will be transported to a profile page that includes the message, “Welcome back, Jason” (presuming the user’s name is Jason). You can use WATIR to easily create this test. You’ll just need to know the login form URL and the field names comprising the form.

On the interest of space I’ll omit the PHP code used to process the form. If successful, the user will be redirected to profile.php and greeted with the aforementioned welcome message.

Of course you should repeatedly run the acceptance tests to make sure something doesn’t break over time. Therefore, instead of using IRB let’s create a new file named test_login_form.rb, adding the following code to the file:

require 'rubygems' require 'watir' browser = Watir::Browser.new browser.goto "http://localhost/developer/watir/login.php"
browser.text_field(:name, "email").set("test@example.com") browser.text_field(:name, "password").set("secret")
browser.button(:value, "Login").click if browser.contains_text("Welcome back, Jason") puts "Test passed. Test user login successful."
else puts "Test failed. Test user did not successfully login." end

Open a terminal window and execute this script:

%>ruby test_login_form.rb

When executed, the browser window will open as it did in the earlier example, but this time you’ll watch what amounts to a slow-motion completion of the form, carried out using the instructions in the same order they appear in the test. If you return to the terminal window, you’ll see one of the two concluding messages based upon whether the test was successful! Sure beats manually testing the form, doesn’t it?

Conclusion

A real-world testing environment will involve creating dozens — if not hundreds — of tests, which can be executed at regular intervals. Therefore, you might consider configuring WATIR tests to run in conjunction with Test::Unit. In any case, WATIR is sure to improve the quality of your code, not to mention make your job much more fun!

source: http://wdvl.com/Authoring/Testing/WAITR/Jason_Gilmore06102010.html

Did you like this? Share it:

Powerful Web Testing Tools

Web testing; Nowadays meant to be very crucial, so many Internet browsers and their supporters. Numerous tools available for web testing most of them require higher budget. Few free website testing tools are available online or as add-ones for example firebug,Yslow. These are not only used for web development also for web testing. We can fetch object details ,CSS, JavaScript and more using these kinds of add ones. It is easy to analyze all these information. Open source Testing tools like Selenium, Watir needs web object’s physical properties or it’s description to run successfully, we can use these tools as an object spy.Checkout some powerful web testing tools

1.Firebug
Firebug integrates with Firefox, it is a great invention for developers can find JavaScript errors , page loading time etc. Most of the developers used to fix Html/CSS, JavaScript errors simply in your finger tips while you browse. Firebug is one of the best applications around for debugging issues with front-end code and CSS. If there’s any image or style that’s out of line, checking it out with Firebug is the best response. It’s even possible to change styles within the extension to see how a website will actually appear in the browser. How this is useful in web testing. We can monitor java script errors, web site performance i.e. site loading time/object wise also Html or CSS validation. Inspect elements option in firebug is like GUI Spy.

2. YSlow
YSlow analyzes web pages and suggests ways to improve their performance based on a set of rules for high performance web pages. YSlow is a Firefox add-on integrated with the Firebug web development tool. YSlow grades web page based on one of three predefined ruleset or a user-defined ruleset. It offers suggestions for improving the page’s performance, summarizes the page’s components, displays statistics about the page, and provides tools for performance analysis, including Smush.it and JSLint.

3. Load Impact (Online testing)
This is used for Performance Testing (Load/Stress). It simulates users and access your website . It simulates large user load on web servers to determine whether or not they can handle the high traffic load. Free users can only attempt using 50 simulated users But this is very useful . The tool will check (ping) from different locations and results will display as a complete report with graphs

Source: http://rajeevprabhakaran.wordpress.com/2009/06/21/powerful-web-testing-tools/

Did you like this? Share it:

Desktop Virtualization Tips for Testing IE

Microsoft outlined desktop virtualization tips late last week that IT pros and developers can use to test the compatibility of their Web sites on a single PC.

The helpful hints on testing multiple versions of Internet Explorer arrived a few days before what might be Microsoft’s debut of the release candidate (RC) version of IE 9, which is currently available as a beta. Rumor has it that Microsoft plans to announce the RC of IE 9 on Thursday Feb. 10.

Options for creating an IE browser test environment using desktop virtualization include using Microsoft Enterprise Desktop Virtualization (requires the Software Assurance licensing option), the use of Remote Desktop Services or Terminal Services (requires licensing on a per-user or per-device basis) and deploying Windows XP Mode. Those options are outlined in a Microsoft white paper. Of course, third-party desktop virtualization solutions could be used instead.

The reason that virtualization is brought up as a testing solution in the first place is that installing a newer version of Internet Explorer on a PC will remove the previously installed version of Microsoft’s browser. A "Multiple IE" tool by Tredosoft once promised to provide a multiple browser solution by tweaking Windows DLLs, but support for that tool ended back in 2007.

A Microsoft blog posted on Friday describes how to set up a test environment using Windows XP Mode, which is free option for those licensed to use Windows 7 Enterprise, Professional or Ultimate editions. Running Windows XP Mode with Windows Virtual PC (a free download) provides a virtualized instance of Windows XP Service Pack 3, which runs on top of the Windows 7 desktop.

The blog contains a link showing how to create different virtual machines running different browsers, such as IE 6, IE 7, IE 8 and IE 9, all accessible on the Windows 7 desktop. The default browser for Windows XP is IE 6, but users can copy a virtual machine and set it up to run a particular browser.

Testers have yet another option of downloading a virtual hard drive of Windows XP SP3 for Windows Virtual PC. The download page contains the imaged bits for testing IE 7 and IE 8. The bits contain the latest patches and security updates and will expire on May 18, 2011.

Microsoft has been promoting a goal for Web developers to get their sites to work with IE 9′s or IE 8′s standards modes, which are the default modes of those browsers. Developers can test for the best user Web site experience using Microsoft’s browsers and then code their sites with a different document mode if intractable compatibility issues remain. Document mode choices include IE 9 standards, IE 8 standards, IE 7 standards and "quirks." The quirks document mode produces an IE 5 browser experience, as well as the user experiences found with the quirks modes of IE 6, IE 7 and IE 8.

Even though IE 9 is currently at beta, Microsoft claimed during its last financial earnings announcements that the beta has been downloaded more than 20 million times. It’s not clear if those were all unique downloads or not. Currently, IE 9 use is just a statistical blip, according to Net Applications’ January measure of browser market share.

IE 8 currently leads in terms of overall browser use at 34.2 percent, followed by Firefox at 18.5 percent and IE 6 at 11.4 percent. Google Chrome 8 edged out IE 7 by one percentage point (9.3 percent vs. 8.3 percent, respectively), according to Net Applications.

source: http://virtualizationreview.com/articles/2011/02/07/desktop-virtualization-tips-for-testing-ie.aspx

Did you like this? Share it: