Over 1,000,000 Minutes of Tutorials Watched

Over 600 Automation Tutorials

Over 2500 Happy Subscribers

QTP/UFT courses from beginner to expert!

My Access

 Amazing User Statistics


  • Percentage of Our Users who make over $100,000 37%
  • Users Who Go On to Get HIgher Paying Jobs 68%
  • Percentage of users who advance using our courses 93%

Build Your First Automation Test

Get Started

Can't Identify Objects?

Find Out How!

$100,000 Dollar Code

Get Started

Higher Paying Jobs!

I Want In!

The Complete Selenium Webdriver with C# Course - Build an Automation Framework From Scratch - Coming Soon!

Pre-Register for Huge Savings

See Why Thousands of People Are Choosing QTPtutorial.net to Learn Automation

I Want My 7 Day Trial

Selenium Webdriver Tutorials

Your Automation Test Sucks

                      Ugh, I am so frustrated after today. The very fact that I am sitting here the night before my holiday break writing this blog post should indicate my level of frustration. Basically, one of my managers asked me to turn off one of my automated checks until it is more stable. Although I’ve heard such silly comments before, after about 20 minutes of discussion, I realized there was no convincing him that turning off any automated check, at any point in time is never a good idea. As a result, I am here, at night, venting the bitter rage of my wounded heart upon the web. So, What is the Problem? Our group has a dedicated team that is responsible for making sure our applications stay up 24/7. This is basically a team of 2 people: an Ops person and another Engineer who is rotated weekly. Whenever this team receives production failure notices, they must look into them, figure out if they are critical to our applications and either take action to fix the problem or contact the application’s Subject Matter Expert (SME). Often, this team needs to wake up in the middle of the night and even on weekends to look at some production failures. The job sucks! I have an automated functional GUI check that runs every single hour to make sure that a user can login to our application. This automated check pulls up our website, logs in, and then validates that the application successfully loaded. One night, this test failed and the support team... read more

How To Download A Github Project and Open It in Visual Studio

Today I want to share with you how to download a project from Github. You can do this with any project, but I specifically want to teach you how to download this Automation Testing framework that I developed. The framework is HERE.   For Visual Studio 2015 (Since the project was coded in VS 2015, importing it into here is the easiest. Another version will have a few extra steps that I will show you all) 1. Go to the url in the search bar. Alternatively, you can also go to "github.com/nadvolod" and then find the project called "LightPomFrameworkTutorial". 2. Click the "Download ZIP" button to download the project.                       3. This is the .zip file that was downloaded. Go ahead and extract it to a location of your choice. 4. Open Visual Studio 2015 as administrator. 5. Open the Solution in Visual Studio.                         6. Go to the location of the extracted files. Open the "LightPomFramework.sln" file from VS. This is the solution file that will load all of the appropriate assets for you to make the automation framework run.             7. You might get this security warning. Go ahead and click "OK". Don't worry, I'm a trustworthy source and I won't be sending any viruses haha. You can yell at me if something goes wrong 🙂 8. In the Solution Explorer, you should not be able to now see all of the framework assets in all of their glory. 9. Build... read more

Resharper for Visual Studio: Build Amazing Automation Testing Code

Something amazing happened to me recently! I am always learning, growing and exploring other resources. And recently I stumbled upon an amazing Visual Studio productivity tool called ReSharper. According to JetBrains, the creators of ReSharper, "ReSharper makes Microsoft Visual Studio a much better IDE. .NET developers worldwide wonder how they've ever lived without ReSharper's code inspections, refactorings and navigation." From my first usage, I can claim that this assertion is completely correct. Within a few minutes of installation I had ReSharper improving my code in countless ways. It was simply phenomenal! By the way, I am not an affiliate of any sort for this company. I just freaking love the tool and wanted to share the awesomeness with my fellow Software Testers. What is ReSharper? ReSharper is a tool that can be plugged into Visual Studio to help improve its IDE. There is a ton of benefits that can come from ReSharper that we will discuss later. This is the site with their download link. You get a Free 30 day trial. Why Should Automation Engineers Use ReSharper? As I stated before, I personally love this tool. It simply makes your code much better without having to spend hours refactoring. It helps to analyze your code during design time and helps you to fix tons of different errors and warnings. ReSharper removes redundant code, unused variables and unused references. ReSharper helps to keep you following the Microsoft standards of using C#. ReSharper makes your code easier to understand and maintain. It even helps to improve your logic so that it is easier to follow in the future. After about 1... read more

How To Create An Automated Check Using WebDriver in Browser Stack with C#

I. How to set up a Visual Studio unit test project for automation testing? Open Visual Studio and click "New Project" to start a new project. For those of you that are new to Visual Studio, a project can represent a collection of things such as classes and tests. On the left pane, open Templates > Other Languages > Visual C# > Test > Unit Test Project. A unit test project is useful to create a collection of unit tests. Something that an Automation Engineer desires. The highest level is the Solution which can encompass multiple projects. The projects can contain multiple classes and other assets. So the name of the solution usually represents your organization. In this case, I just named it QTP Tutorial Tests for our purposes, assuming that this solution would just have a bunch of tests related to the site. Inside of the solution, you can have projects that correlate to each of your applications. Click "OK" button after you finished naming your solution and project. Automatically your Visual Studio will take you to a template of a unit test. It creates everything for you. You can rename the classes and the method names, but that's not relevant for these purposes. II. How to import appropriate assemblies into Visual Studio to run automated checks? In the "Solution Explorer" tab on the right side, right click on "References" and then select "Manage NuGet Packages". You can think of NuGet packages as plugins or extensions that give you code to be able to perform certain actions. These have been developed by different individuals to solve a common problem.... read more


See What Our Subscribers Are Saying!


Fantastic courses. I came here to learn Automation and this site helped me do this quickly. The instructor has a good humor and very knowledgeable.



QA Manual Tester

Absolutely love this website. Great videos for any automation occasion. I use this on a daily basis while I'm at work! Thank you for all of your hard work.



QA Automation Engineer

The advanced material is very helpful. Lots of functions and code that I can use in my job. Please keep putting out more information.



QTP tester

Start Learning QTP/UFT Now!

Start Now!

The Most Comprehensive VBscript Tutorial!

Learn VBscript

Practice Automation On A Real Web Page

Practice Here

Latest Posts On Automation Testing

Automation QTP tutorial-double clicking on any object

Hey guys. Todays tutorial is quick. If you want to double click on any object, just identify your current browser, page, and object you want to click on. But instead of the regular click method to click on it, we will user FireEvent("ondblclick"). Browser("Index:=0").Page("title:=.*").WebElement("innertext:=unique property name").FireEvent "ondblclick" The Index of the Browser is dependent on how many browser windows you have open, and in which order the windows were opened. So if you have 2 browser windows open and you want to click on the first window, set the browser index=0. If you want to click on the second window, set the index=1. Easy right? The page title is using the .* regular expression which just means that the a specific page title is not needed. Find the generic page that is associate with the browser window. the "unique property name" for the web element can be anything. So if you have a web element with a unique property such as "WebElement1" then the code above would look like WebElement("innertext:=WebElement1") Lastly, as explained above, just use the FireEvent "ondblclick" to double click on this object. You can replicate this code for any object that you would like to click on. Post your comments and questions below! We love your... read more

Software Automation QTP tutorial – 5 top reasons for using automation

Hi. If you work at a company that's not using automation yet, you are well behind the industry. Automation is still a relatively new concept in the industry, but is becoming an important part of every testing environment moving forward. Today, I am going to cover the top 5 reasons for including automation in your companies testing environment. 1. Repetitive Tasks: If you've ever been a manual tester, you know exactly how tedious and repetitive testing tasks can get. Most manual testers end up testing the same application functionality multiple times. This is not only time consuming, but takes away from other testing tasks. This is where automation comes in. With automation, a simple and quick script can take care of these repetitive tasks. At the click of a button, we can test the repetitive task behind the scenes, while manual testers can move forward with testing other functionality. 2. Accuracy: Manual efforts are not always consistently accurate. It's not a surprise that human beings make mistakes. The great thing about automation, is once you have the script and data in place, automation accurately repeats the same testing procedures whether you run the test once or a hundred times. 3. Automation helps developers: How many times has a developer claimed that they've completed a portion of the application, only to find out that it doesn't work after deployment? Although developers create unit tests, these tests do not perform actual GUI testing tasks that are needed for the authentic user experience. After a developer deploys their code, running automation tests can verify whether their code has broken the build or not.... read more

QA Automation: QTP tutorial – using the same script for multiple environments

Hi. Today, I will show you an awesome tutorial for using the same script to test multiple environments. Let's say you're working on an application that requires automation tests to run on two environments. The first environment is the test environment before deployment to production. And the second environment is the actual production environment after deployment. Let's also say that the functionality for both environments is exactly the same, but the login username and password differs based on the environment. In this scenario, you don't need to create two separate scripts to accommodate the differences in login credentials. You can create one script and just change the login credentials based on the environment. I will be using our premade framework to write the main script. This is a framework I haven't shared on our website so you will have to write your own code from scratch. I just want you to use this tutorial as an example. Let's get started! 1. Open UFT and create a new test. We will create the login functionality for our qtptutorial.net website. Some automation testers may create two separate scripts for these two environments which may look something like this: 'Test Environment Open_URL "https://www.qtptutorial.net/wp-login.php?loggedout=true" Set_TextField_ByHtmlid "user_login", 0, "TestEnvironment" Set_TextField_ByHtmlid "user_pass", 0, "123456" Click_Button "Log In", 0 'Prod Environment Open_URL "https://www.qtptutorial.net/wp-login.php?loggedout=true" Set_TextField_ByHtmlid "user_login", 0, "ProdEnvironemnt" Set_TextField_ByHtmlid "user_pass", 0, "678900" Click_Button "Log In", 0 Notice how these two scripts are exactly the same except for the login credentials depeneding on the type of enevironment. We will consolidate this into one script which will save us a lot of time now and in future maintenance. 2. I will create two global variables. One for the username and one for the password. Click file -->New-->Function Library and name the Library... read more

Pin It on Pinterest

Clef two-factor authentication