February 27, 2023

SelectorsHub Intermediate Tutorial - Selectorshub XPath | How to use SelectorsHub | CSS SelectorsHub

This is the second SelectorsHub tutorial in my SelectorsHub free full course. SelectorsHub is a powerful tool that allows automation testing engineers and web developers to find the correct and unique locators for web elements in iframes, shadow DOM, XPath for SVG and XPath Axes. Learn how to use SelectorsHub to find such typical locators by viewing my SelectorsHub intermediate tutorial below or read on...

Firstly, to install SelectorsHub extension, users can go to the Chrome web store or the SelectorsHub website, where it provides SelectorsHub links for different browsers. SelectorsHub practice page is a helpful resource that allows test automation engineers to practice finding the locators for web elements in iframes or shadow DOM, SVG and other types of web elements.

Iframes are used to make a website layout, and content can be from the same domain or from another domain, which is called a cross-origin iframe. SelectorsHub can help us find locators for web elements inside iframes. If we inspect a web element using SelectorsHub, it identifies if that web element is inside an iframe. Then, SelectorsHub gives the iframe locator as well as the web element locator. Please view the above SelectorsHub tutorial to see examples of SelectorsHub finding the locators for web element in iframe from the same domain and web element in a cross-origin iframe.

Shadow DOM is a structure that hides or encapsulates web elements. SelectorsHub can find locators for elements in shadow DOM also. Web elements in shadow DOM cannot be accessed using XPath. SelectorsHub identifies if the inspected web element is inside shadow DOM. SelectorsHub gives the CSS selector of such a web element. We can then use CSS selector in Selenium WebDriver or other tools.

SVG stands for Scalable Vector Graphics. SVG is a format for two-dimensional images. SVG stores the image in XML format internally. The benefit of using SVG element in web pages is that it can be scaled to become bigger or smaller with the same quality. SelectorsHub can find the locators for SVG elements. But, SVG doesn't support standard XPath format so, SelectorsHub gives the XPath in a special format for the inspected SVG element.

XPath Axes are useful when we are unable to find a suitable XPath for a web element. XPath Axis is XPath with respect to another web element (with an easier XPath). SelectorsHub supports XPath Axes. On using the Axes button in SelectorsHub, we can inspect the other web element (called Parent in SelectorsHub) and then the difficult web element (called Child in SelectorsHub). SelectorsHub gives the XPath axis for the child element.

In conclusion, SelectorsHub is a useful tool for automation testing engineers and web developers to enhance their productivity and efficiency in finding the correct and unique locators for web elements, especially when working with complicated web pages. Thank you 🙏

February 20, 2023

SelectorsHub Tutorial - SelectorsHub XPath | How to use SelectorsHub | CSS SelectorsHub | How to install SelectorsHub

Summary: SelectorsHub is a tool that helps to find the correct and unique locators for web elements in automated testing scripts. SelectorsHub tool generates and verifies locators such as XPath, CSS selector and playwright selectors. SelectorsHub XPath tool is free, more accurate and user-friendly than other tools like browser developer tools. It works with various browsers, and the installation process is easy. To use SelectorsHub, you need to open the web page, right-click on the web element, click "Inspect" and then open SelectorsHub to see the suggested selectors. You can copy the desired selector and paste it in your test script for use as locators in Selenium etc. SelectorsHub also provides an attribute filter to search for selectors with specific attributes.

Welcome to this SelectorsHub tutorial. In this blog post, I will cover the basics about SelectorsHub, including what it is, how to install it and how to use it. This post is part of my SelectorsHub course, which aims at helping you learn everything there is to know about SelectorsHub. You can view this SelectorsHub tutorial below or read on.

What is SelectorsHub? SelectorsHub is a free tool that helps you find the correct and unique locators for your web elements. Whether you use Selenium Webdriver or any other tool, SelectorsHub is the software testing tool for locating web elements accurately and efficiently.
You can use SelectorsHub XPath or CSS SelectorsHub to get the locators you need for your automation testing script. Unlike other tools, such as the developer tools you get in your browser, SelectorsHub is more accurate and user-friendly. It generates and verifies XPath, CSS selector, and playwright selectors, jQuery and other selectors.

How to Install SelectorsHub: The installation process for SelectorsHub is straightforward. All you need to do is choose your browser and follow simple steps for SelectorsHub install. For example, for Google Chrome users, visit the Chrome web store and search for SelectorsHub. Click "Add to Chrome" to download the extension.  After adding SelectorsHub to your browser, restart it. You should now see the SelectorsHub icon in your extensions. Open any web page, right-click on any element and select "Inspect." On the right side of the developer tools window, you should see SelectorsHub. SelectorsHub is also linked on the SelectorsHub website, where you can find SelectorsHub install links for all major browsers.

How to use SelectorsHub: SelectorsHub usage is easy. All you need to do is open the web page you want to test, right-click on the web element and then click on "Inspect." From here, open SelectorsHub, and it will show you the available selectors. You can copy the desired selector and paste it into your script as locators in Selenium WebDriver.

SelectorsHub Features: Here are some of the basic SelectorsHub features:
1) Suggested Selectors: SelectorsHub shows you the suggested selectors. For example, you can see the suggested selectors for the Google search box, including a relative CSS selector and a relative XPath.
2) Copying Selectors: You can copy any of the selectors shown and paste them into your automation testing script.
3) User-Friendly Interface: SelectorsHub has a user-friendly interface that makes it easy to find the correct and unique locators.

Conclusion: SelectorsHub tool is excellent for anyone who needs to locate web elements accurately and efficiently. It is easy to install, user-friendly and provides accurate selectors. With SelectorsHub, you can significantly speed up your automation testing and save time in your web development projects.

Want to learn more? Get free SelectorsHub training with the SelectorsHub free full course.

Note: With this SelectorsHub tutorial, you can learn about SelectorsHub xpath, how to use selectorshub to find locators in Selenium, CSS selectorshub and how to install selectorshub to find correct locators in Selenium Webdriver.

February 13, 2023

Agile Values | Agile Values Vs Principles | Agile Values Explained | Agile Manifesto Values | Agile Software Development

This blog post is on Agile values. Four Agile values explained with examples in this post. The Agile Manifesto is a collection of values and principles behind those values for Agile software development and Agile software testing. View my Agile Values and Agile Values Vs Principles video below or read on.

Agile methodology aims to develop software in an efficient and flexible way. The first of core Agile values is individuals and interactions over processes and tools. So an Agile team may have regular face-to-face meetings with the product owner and the client to show the working software and gather feedback. The Agile team may work in pairs for more knowledge sharing.

Next in Agile core values is working software over comprehensive documentation. Now in Agile development, the team values the item on the right also, which is documentation but the Agile team values the item on the left more. So focusing on working software as one of the values of Agile, the team may deliver working software incrementally on a regular basis, like every two weeks, without worrying about detailed documentation. In addition, the team may use automated testing to get feedback about software quality.

The next in four values of Agile is customer collaboration over contract negotiation. In Agile project management, the team collaborates with the product owner or the client directly to get the requirements and share updates about the working software instead of using a detailed contract containing the project scope. This collaboration helps create a culture of trust in the Agile project. Question: a customer is too busy to provide feedback during a project and just wants everything to be as specified in the purchase order. Which Agile value does this violate? The answer is customer collaboration over contract negotiation. By not providing feedback, the customer is not collaborating. Due to this, the team may fail to deliver the correct software because everything cannot be spelled out in the contract, that is referred to in the purchase order. 

The last in Agile four values is responding to change over following a plan. This value of Agile makes a team welcome change. The team may use Agile practices instead of following a fixed plan. The team may also conduct retrospectives, which are meetings to analyze their Sprint and adapt their processes accordingly. Question: after the Agile team began the development, the client wants to change the scope of the project so the team decides to use Agile practices like user stories, backlogs and sprints to manage and prioritize the project requirements. Which Agile value is the team observing? The answer is responding to change over following a plan. These Agile practices will allow the team to respond to change better.

After four core values of Agile, you should also know about 12 Agile principles. The Agile Manifesto principles are detailed guidelines for the Agile values. The difference or Agile values vs principles is that the principles give guidelines on how to actually observe the Agile values in the project. Here is my summary of 12 Agile principles. Customer satisfaction is the highest priority. The team should achieve customer satisfaction by continuous delivery of value in working software. Also the team should welcome changing requirements. The team should reflect at regular intervals and change the processes to become even more effective. The team should have soft skills like collaboration, motivation and the team should be empowered. Face-to-face communication is the most effective way to exchange information within the team. The team should focus on technical excellence and simplicity in the software

Want to learn systematically and with more examples? View my Agile values video. Thank you 🙏

February 06, 2023

BDD with BDD full form (BDD stands for) | BDD Cucumber | BDD meaning | BDD testing | BDD vs TDD

Do you want to know the difference between BDD, TDD and ATDD? View my BDD, TDD and ATDD video or read this blog post.

 
In this blog post, I will explain what is BDD, what is Test Driven Development and ATDD vs TDD. BDD full form is Behavior Driven Development. Here is a Behavior Driven Development example. A Feature is a higher-level functionality provided by the system so for example a Feature can be place an order. A User Story explains the system behavior in non-technical language that everybody on the team can understand. The example of a User Story for the place an order Feature is As a customer I want to be able to place an order on the e-commerce website so that I can purchase the items that I need. 
 In the Cucumber Test there is the Scenario, which gives us steps and expected results of a test. So for example, the Scenario is successfully place an order. Given means the preconditions of the Scenario so Given a customer is on the website And the customer has added items to their shopping cart. When means the actions or operations or the steps of the test. When the customer clicks the checkout button. Then means the expected result. Then the order is successfully placed. In Java, this User Story may be implemented by using a public class like OrdersUtility, which is going to have a public method called placeOrder and it needs an Item object and the Customer object. There is a list of items placed by the customer in their shopping cart and a customer. So using a list of item objects and the customer object, the developers have to write the code to process in order and update the database.
 
BDD stands for Behavior Driven Development. BDD is used in Agile software development. As introduction to Behavior Driven Development, you should know that its focus is on system behaviors or application behaviors. BDD uses User Stories that explain the system behavior in a non-technical language. BDD testing uses Tests to verify those system behaviors. In BDD, the common Behavior Driven Development software testing tools are Cucumber that allows tests to be written in English. Cucumber may be used in a BDD Cucumber framework with Selenium. JBehave is used for testing web applications. SpecFlow is a tool for testing .NET applications. JBehave and SpecFlow allow tests to be written in a natural language syntax. 
 
TDD full form is Test Driven Development. The focus of Test Driven Development in software engineering is on system requirements and to write code so that it is simple to test the individual components. Test Driven Development vs Behavior Driven Development uses functional requirements and tests. Also, the common testing tools are different in Behavior Driven Development vs Test Driven Development or BDD vs TDD. In TDD the common testing tools are JUnit for testing Java applications or NUnit for testing.NET applications. If you want to know ATDD vs TDD, ATDD full form is Acceptance Test Driven Development. In Acceptance Test Driven Development ATDD, the focus is on system requirements of the whole system, which is different from TDD's focus on requirements of individual components. ATDD uses Acceptance Criteria which is commonly documented as User Stories and Acceptance Tests. In ATDD, the Acceptance Tests are written before writing the code that would pass those Acceptance Tests. The common testing Tools in ATDD include FitNesse, which allows writing Acceptance Tests in natural language syntax, Cucumber or JBehave. 
 
I hope that you know BDD meaning and have an idea about BDD Behavior Driven Development, ATDD and Test Driven Development TDD in Agile. If you want to understand BDD with more examples, please view my BDD video. Thank you!