Skip to main content

"Hello Selenium"



Now, as we have already setup the required environment, let's just start with a hello world test with selenium.

In this let's just write a basic test to make sure that our environment is working properly.

For this hello selenium test we will be automating below test:

Below are the code snippets:

Test class UnitTest1 containing required test.



Here in this class, at the top I have used two statements i.e.
    using Microsoft.VisualStudio.TestTools.UnitTesting;
    using TestFramework;


First using statement is required in for writing unit tests and second using statement is required so that we can access methods from class under TestFramework namespace.

There is [TestClass] attribute used with this class. This is required so that tests written in this class can be recognized. If you miss this attribute then your tests are not going to be recognized so, don't forget to use this attribute.


Then, Driver class containing the required code for test.




In this example, one test class is created under UITests project and in this test class one test is written with required steps that I would need to run for this example test.

Further, there is a Driver class created in TestFramework project which handles all the required things for tests.

In this way we are separating tests from our framework. We will be discussing about project structure in more details in my later posts.


Test execution:

Step 1: Driver.GoTo("http://www.google.com")  will call GoTo() method of Driver class which in turn will execute Driver.Navigate().GoToUrl(). It will make us navigate to "http://www.google.com" on browser.

Step 2: Driver.EnterText("Hello Selenium")  will call EnterText() method of Driver class which in turn will execute code shown in above snippet. First it will make our driver to wait for 5 whenever it tries to find any web element. Then it will find a web element with name as "lst-ib" and finally it will enter "Hello Selenium" text to search box.

Step 3: Driver.ClickSearchButton()  will call ClickSearchButton() method of Driver class which in turn will execute the code shown in above snippet. It will find a button with name "btnG" and then click on this button.

In my next post I will be writing about page object model used to design our framework.



Thanks for reading this post and see you in next post. Cya!






Comments

Popular posts from this blog

Logging in Selenium - To File

In my previous post I explained you how you can configure log4net in your project to do logging to console with example. Now, in this post I will be explaining how we can configure log4net to log to file instead of console. As we already have working logs to console from our TestFramework so logging to file doesn't take much efforts. You just need to follow below steps and you are done. Configuring log4net to log to file Step 1 : Add an " app.config " file in your UITests project with content as shown below: Step 2:   Change configurator in Configure method of Log class That's it. Now, when you will run the test it will log to console as well as file named " Test.log ". This file can be found at \TestFramework\UITests\bin\Debug location in you project folder. As you saw, we just added app.config file and then changed the configurator in order to log to file. Earlier we used "BasicConfigurator.Configure()" which writes logs to cons...

Logging in Selenium

Any application is incomplete until it's activities are traceable. Here comes the use of logging. By logging important actions you can later on track anything you want especially when there are some error situations. It becomes easy to debug the issues if logs are generated properly. Similarly, it is very important that our automation framework generates logs so that whenever any test fails, we can track the issue by tracing it's logs. In this post, I will be explaining you how we can log using log4net in selenium. Before using methods of this library we need to configure this to our application. Let's do this first then. Configuring log4net in selenium: First of all you need to download this library so that this can be used. You can read about log4net and then download it from this link and save the dll file after extracting it to folder that is under your project folder. After downloading this library you need to add references of this in you project. To do ...

SELENIUM: Some Useful Facts

Before we start designing a framework, there are few facts that we should always remember. It is not important what you have designed, it is more important that how good your product is. Also, this kind of analysis should always be done in the beginning so that you don't have to devote extra time and efforts for it later. It is always good to fix something in beginning than worrying about it later when it has become a big issue and become difficult to locate the issue. It's not like that we won't be able to fix it, we will definitely fix it but with more cost and efforts. Let's go through few of these facts. Layers in Framework You should always keep in mind the layers that should be there in the framework you are designing. Layers to be created generally varies application to application that you are creating but most of the frameworks contains below layers often. In above picture, there is workflow layer at the top. Workflows can be think of as somet...