QA blog postings

QA Postings

Earliest: November 26, 2017Latest: January 20, 2020Total: 96
June 18, 2018

Chrome Throttling

Sometimes you need to test browser activity with slow connections. QA may need to test the user experience when it takes a long time for an image or JS file.

Chrome throttling is forcing the browser to slow down. This simulates a slow activity that users may experience via slow internet connections.

How to Enable Throttling

Chrome Online

  • Open the Developer Tools (Option-Command-I)
  • Select the Network Tab
  • Under the Audits Menu you should see Online with an Arrow to the right.
  • There are two Presets, Fast 3G, Slow 3G, Offline
  • You can create a Custom One by selecting Addx2026

Custom Throttling Options

Here are a couple of throttling settings to add.

  • 56k - Modem Speed
  • 128k - ISDN Speed

Handy Speed Chart

Here's a handy chart of various Internet Speeds:

speedtime

A Few Words about Throttling Testing

Throttling testing is a good way to see what the page load looks like for some users. This is especially helpful when testing sites for mobile.

If you're running a Business to Business website, then running performance testing via throttling doesn't make sense since most users will be using fast internet.

I have found throttling testing a good way to test race conditions. If certain JavaScript files don't load at a certain time, it could cause some unexpected behavior or views.

Throttling testing is good for distance testing. (For example, if you have customers that are Japan, your website may not be performing as fast as people in New York City - because your servers are far away from their location.)

June 11, 2018

Panoramic Capture in Snagit

Sometimes it's not easy to capture an entire webpage by using some Full Page Screen Capture Tools. That's when using the Panoramic Capture tool in TechSmith Snagit can be useful.

How to Use the Capture Tool

When you use the Panoramic capture, you select the area that you want to capture, and then scroll to generate the panoramic image. After your done, click 'Stop' and Snagit will render the final image.

Panoramic Capture is available both in Photo and Video mode. In video mode, there is an icon to let you know that you can create a Panoramic view. In Photo mode, you need to define the capture selection ahead of time, alternatively, you could use the "All-in-One" option and have the same choice as video mode.

Capture Screen
Video and "All in One" mode

Image Mode Option
Image mode as a Preset

QA Advantage

This is a great tool to have available when QA has to capture the contents of an internal scrollable Div (or iFrame). Simply select the area that you want to capture and then scroll the iframe.

This is useful to help verify data in a table where the viewing area is too small.

June 4, 2018

Adding Alternative Search Engines to Chrome

Today's post is about adding additional search engines to Chrome and how to use them. Not going to cover Firefox in this post since the process is a bit different.

While 90% of your searches can be found via a simple Google query, sometimes it's better to use a different search engine. For example, there are instances where other sites that make sense than using a typical Google Search:

  • Jira - Quickly search the company Jira database.
  • StackOverflow - See if someone already asked and received an answer.
  • Apple Support - Having issues with the MacBook or Apple Software? A great place to get answers
  • Twitter - Search Twitter for the latest news. You jump right into Twitter with your search query.
  • Facebook - Sometimes Facebook posts are fast on what's going on.

Fortunately you can easily configure Chrome to use other search engines.

Steps to add the Search to Chrome

In Chrome, Visit the Manage SearchEngine page. On the page you'll see all the installed Search Engines and other ones that Google might have added.

Manage Search Settings

The Key thing on this page is the Keyword, you'll want to keep it as simple as possible. Google automatically adds a .com to some of the keywords, but that's additional keys you don't need. Keep the keyword simple, as I did in the above example.

To add a new one, click on ADD. Type in the name of the Search Engine, Keyword (Keep it simple) and URL. TechRepublic does a good job explaining the steps.

How to use the Enable the Alternative Search Engines

To use an alternative search engine in the Chrome bar, you type in the Keyword and then the Tab key. The search bar changes to let you know that your now searching using that engine:

search Twitter

Tip: This is why it's a good idea to keep the keyword simple and short. If you have a shorter keyword, you're likely to use the shortcut.

Now you can quickly search eBay, Twitter, StackOverflow and other sites and bypass the main page.

May 28, 2018

crontab.guru

Running frequent tasks is one of the important parts of the Infrastructure team. The tasks vary from deleting files in the /tmp folder to running nightly reports.

The most popular tools for running scheduled tasks is cron.

It's important for QA to know the frequency of certain tasks and if that is the intended results. For example, should the task be running at 2 pm every other day, or is it at 2 pm every other week?

It's hard to remember the proper syntax to use. Fortunately, there is help.

Crontab.guru

crontab
https://crontab.guru/

Crontab.guru is an awesome site that helps you write and identify proper cron syntax. Simply put in a cron syntax and you'll get examples of how it would run.

This site also has a nice learning area. You can learn all the various crontab syntax options, the examples page has great example of different schedule options. (Such as setting up a cron schedule to run a cron job every even hour.)

Remember once you set the Cron job to test it! There some good tips over at End Point.

May 21, 2018

EditThisCookie

Website Cookies are small files that are used to for websites to store information on your browser. Website owners will tag a cookie to a browser for tracking purposes. Cookies are one way that a website knows that you visited it before and can auto log you in to make the experience better.

Occasionally the Quality Assurance team has to verify cookies have been set or to manipulate an existing cookie. This can be a bit tricky to do in Chrome Console panel.

EditThisCookie

Edit This Cookie extension is a great way to handle all your cookie transactions. It's available for Chrome, Firefox and Opera. It's the easiest way to do anything browser cookie related.

Edit This Cookie2

Some Notes

I like how the cookie is separated by name, and if you want more information, simply click on the header to find more information. Making it easy to scroll through all the cookies.

EditThisCookie is open source. Check out the source code at GIT Hub

Blocked Cookies are ways to prevent a cookie from being created. You may do this to stop websites from tracking you online. (Hi Google!)

Protected Cookies is a feature to lock the value of a cookie. This will prevent a site from changing the value of a preset cookie. This is a good way for QA to test how cookies interact with the site.

May 14, 2018

Chrome Profiles vs Icognito Mode

As part of testing, Quality Assurance engineers usually switch to Incognito mode to verify functionality. For example, to see how a website behaves without the cookie setting.

If you don't want Google Chrome to remember your activity, you can browse the web privately in Chrome's Incognito mode.

Instead of switching to Incognito mode, have you considered setting up a separate profile for testing? For example, you can set up a profile for Dev, Staging, and Production:

Chrome Persons

Instead of launching Incognito mode to test production, you might be better off creating a Chrome Profile.

Chrome Profile/People

Each Chrome Profile is an isolated environment. Think of each Person as a separate Chrome application - each with its own Extensions, Bookmarks and Cookies.

This means you can enable extensions and other settings for that particular environment.

In addition, you get a unique Bookmark bar specific to that Profile. Now you can have special bookmarks that you would use for Staging and Production.

When you go Incognito mode you only get the bookmarks for the current profile. In most cases, all the extensions are disabled. Profiles are a bit more powerful.

Unfortunately there is no keyboard shortcut to switch between profiles. You will have to use the profile switcher. However, There is a way to create a new Dock Launcher to fire up a different profile.

Creating a Profile

It's very easy to create a new profile. Simply select the People menu, and then 'Add Person' or select your name on the top right of the current browser window and select "Manage People" then click on "Add Person"

There is no limit on the number of people you can have, and you can always remove the profile.

Tip: Set up a temporary profile for that big project that your working on.

Imagine having bookmarks to the Current Product Specs, Jira Parent Ticket and the QA Wiki Reference page in the Bookmark Bar. Once the project is done, delete the profile.

A Google profile is a good way to manage a large project.

MacOS: Create a Profile Specific Dock Launcher

To launch Chrome with a specific profile, you pass through the profile-directory parameter. The profile number is based on the order it was created on the computer.

  • open -a "Google Chrome" --args --profile-directory="Profile 4"
  • open -a "Google Chrome" --args --profile-directory="Profile 1"

If you want to create an Application Shortcut, use the Automator Tool. Simple copy/paste the command into the "Run Shell" command window:

Automator Action

Action Steps

  • Launch the Automator application
  • Create a new Document
  • Select Application as the Type of Document
  • In the Search command, to the right of Variables, type in Shell
  • Select the 'Run Shell Script'
  • Paste in open -a "Google Chrome" --args --profile-directory="Profile 2" (Change the profile to the one you want.)
  • Test the command by typing Command R
  • Save the Application to someplace, and then drag/drop it in the Dock.

Learn More about Google Profile

Read all about Google Person functionality on the "Share Chrome with Others" page.

May 7, 2018

Vivaldi Browser

The Vivaldi is a great secondary browser for QA. It's built on the same platform ( Blink ) as Google Chrome, with some extras that QA will appreciate.

Vivaldi Display
http://www.vivaldi.com

Why Use Another Browser?

Having another browser is a good way to isolate testing. You can use the secondary browser to test certain third-party extensions for compatibility issues.

In addition, Chrome doesn't always make things easy. It's good to expand the horizons and see how other browsers make testing Web Applications easier.

Three cool Features

Here are some built-in features in Vivaldi that are not regularly available in Chrome.

Web Panels

Quickly access Twitter, Facebook or any Dashboard to find out what's going on. If the site is using responsive programming, the web panels will display the site as if your viewing it from a mobile device.

Web Panels are customizable tabs which allow you to keep your favorite sites easily accessible on the side Panel of Vivaldi. Opening a Web Panel will allow you to simultaneously view its content alongside the tab(s) in your main window.

For QA, this makes it easy to access social networks or system dashboards to quickly check to see if services are down.

Built-in Screen Capture

Need a get a browser screenshot? Vivaldi makes it super easy to get a simple browser screenshot or a full-page shot.

There are three ways to get this done:

  • Page Action
  • Quick Command
  • Keyboard Shortcut - create your own shortcut in the settings.

While there are plenty of awesome extensions that are available in Chrome, none have the multiple access that's built in Vivaldi. The quick command and customize keyboard shortcut come in handy.

Quick Commands is a tool for users that like to keep their hands on the keyboard. To access the Capture tool via Quick Commands:

  • Open Quick Commands by pressing x2318 E.
  • Enter "Capture" to filter the list of available commands.
  • Use the arrow keys to navigate the list of Capture commands.
  • Press Enter to issue selected command, or
  • Close Quick Commands by pressing Escape key.

Status Bar Page Actions

On the bottom of the browser window is an action bar. One of the cool features is page actions. Here you have the ability to make quick changes to the existing site.

Functionalities available include: Content Blocker, CSS Debugger, Filter Black and White, Filter Grayscale, Filter Intensity, Filter Invert, Filter Obscure, Filter Sepia, Fonts Monospace, Highlight Focus, Highlight Hover, Reader View, Skewed Images, Transformed 3D, Transitions Forced and Transitions Removed.

You probably think that they aren't useful, but it can help with debugging issues. In addition, combined with the screenshot functionality and you can use these actions to highlight features that may not be obviously broken.

Check out Vivaldi

It doesn't cost anything to check out Vivaldi. There's lots of exciting features on their Features page.

More more thing... Vivaldi has built-in Apple Script support. So you can run all sorts of actions against the browser.

April 30, 2018

Zero Downtime in QA

When people think of Zero Downtime, they usually think about servers and networks. They don't want their websites to go down. Something along this quote:

Data Never Down

Zero Downtime in QA

In QA, there's always something to do. There never is a "downtime." Sure when there's no ticket to test, or in between release cycles, it can seem like downtime. Truth be told there's always something to do in QA.

It's important to keep busy, even when there's nothing new to test.

Nine Things to do in a QA Downtime

This is a general "what to do" when engineering has completed a sprint and there's nothing new in the queue for QA.

  1. Update Manual Testcases - Every release brings new changes to the application. Make sure the test cases are always kept up to date.
  2. Update Manual Testcases Execution - What test cases are being run every release? Do they still need to be run? Check out the priority of weekly regression test cases to see if they are still relivent.
  3. Writing Automation - Automation writing is a continuous process. Where it's to fix application changes, or support new browser features - its a never ending process. In addition, its good to find ways to make the automation process go faster.
  4. Update Wiki - Make sure that online documentation is updated based on the latest release. (Deployment Cycle, Lessons learned from the testing)
  5. Review Tests - Was there hiccups during the last test cycle? What could have been done better to prevent the issues from occurring in the future?
  6. Review Documentation on upcoming projects - Get a jump start on the next project by reviewing the product/technical specs.
  7. Usability Testing - Go through the application and see if there's any bugs/issues that aren't being reported by customers. Sometimes features/functionaries that were deployed in the past are not working today and missed by manual testing because people are testing for functionality rather than seeing from a customer prospective. (QA Should watch some Usability testing to get an idea how customers really use the application.)
  8. Application Testing - Learn more about the Developer tools in Chrome and/or FireFox. Some techniques that you learn today may help with a future project - such as how to capture screenshots in the Developer tools.
  9. Continuous Learning - When was the last time you touch up on JQuery, SQL or HTML5? Check out some of the training on UDemy or lynda.com.

QA Word Cloud

I ran the above items in a word cloud generator and came up with the following.

Q A Word Cloud

April 23, 2018

Test Case Repository

A Test Case repository is where QA keeps test cases use for various test situations. You should be able to find tests for Weekly Regression, Performance Testing, Security Testing and Acceptance Testing.

Test- Case- Repository-is-1

Seven Things I Learned About Using A Test Case Repository

  1. Always Update! Systems Change, Browsers change. If a test case hasn?t been updated in 3 months something is clearly wrong with it. (If it?s a manual test case, then it might be a good candidate for automation.)
  2. Negative Tests are Good! QA can learn a lot about negative test cases in a separate part of the project. Helps come up with ideas on
  3. Focus on the 80/20 rule. Don?t clutter the Test Case Repository with useless tests that people would not execute because they were relevant during the development stage of a project.
  4. Prioritize Tests. There should be more High Priority / Critical Tests in the Test Case Repository than low-level ones. Chances are the low-level ones won?t get executed very often, try combining the tests so QA isn?t overwhelmed by the number of tests to run.
  5. Product Managers Should be in the Know. Share access to the Test Case Repository to Product Managers so they are aware of what tests are run on a weekly bases. They may offer feedback on an additional test that should be run - or change the priority on existing test cases.
  6. Write Good Practical Test Cases. Test Cases should be easily understood and executed. There should never be a need to contact the original author. It?s a good place for new QA Engineers on a project to start. In addition, QA Managers should point out well-written test cases to inspire everyone to write well.
  7. Audit Often. Take a good look at the Test Case Repository often. During downtime, check to see if the test cases are relevant. If it?s not be executed, find out why and decide if it?s a relevant test.

Remember

It?s not the quanity of the test cases that matter it?s the quality of the tests.

April 16, 2018

Negative Test Cases

In QA testing, Negative Tests are used to make sure the application behaves when actions are performed outside of expectations.

Negative-test-cases-are

An example would be to enter Unicode characters in a phone field. Sure you may test for alphanumeric values - but what if someone accidentally typed in a Unicode value?

Negative Tests are a good way to see how solid the code is written. Did the developer think of all the edge cases? An example did the Developer account for not allowing a single space in a required field (users do this so they don't have to put in information - such as phone numbers.)

Thoughts About Negative Test Cases

In your Test Case Repository, you should have a lot more Positive Test Cases than Negative test cases. You should be testing more than a positive outcome will happen than negative ones.

When testing a new product, you should have more Negative Test Cases than Positive ones. QA should be making sure that there are no bad surprises when the product is launched.

You won't account for all the scenarios but can learn a lot from past projects and the way that certain developers write the code.

Most companies have done a very poor job of identifying and documenting negative test scenarios.

A good source of Negative testing data is the Bug Magnet browser extension.