HritikG / WebDriver-io_Practice

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Selenium is an open-source framework for automated testing. It is used to validate web applications across different platforms and browsers. It provides domain-specific language to write test scripts in different programming languages such as Java, C#, Perl, Groovy, PHP, Python, Scala, and Ruby.

WebdriverIO is an all in one framework for your web app development. It enables you to run small and lightweight component tests as well as running e2e test scenarios in the browser or on a mobile device. This guarantees that you to do the testing in an environment used by your users.

Selenium supports multiple programming languages such as Java, Python, C#, and more, while WebdriverIO is specifically designed for JavaScript, making it a natural choice for those already working with JavaScript frameworks

Why Webdriver.IO? WebdriverIO is a progressive automation framework built to automate modern web and mobile applications. It simplifies the interaction with your app and provides a set of plugins that help you create a scalable, robust and stable test suite.

It is designed to be:

Extendable - Adding helper functions, or more complicated sets and combinations of existing commands is simple and really useful Compatible - WebdriverIO can be run on the WebDriver Protocol for true cross-browser testing as well as Chrome DevTools Protocol for Chromium based automation using Puppeteer. Feature Rich - The huge variety of built-in and community plugins allows you to easily integrate and extend your setup to fulfill your requirements.

You can use WebdriverIO to automate:

🌐 modern web applications written in React, Vue, Angular, Svelte or other frontend frameworks 📱 hybrid or native mobile applications running in an emulator/simulator or on a real device 💻 native desktop applications (e.g. written with Electron.js) 📦 unit or component testing of web components in the browser

Based on Web Standards WebdriverIO leverages the power of the WebDriver and WebDriver-BiDi protocol that is developed and supported by all browser vendors and guarantees a true cross-browser testing experience. While other automation tools require you to download modified browser engines that aren't used by actual users or emulate user behavior by injecting JavaScript, WebdriverIO relies on a common agreed standard for automation that is properly tested and ensures compatibility for decades to come.

Furthermore WebdriverIO has also support for alternative, proprietary automation protocols like Chrome DevTools for debugging and introspection purposes. This allows the user to seamlessly switch between conventional commands based on WebDriver and powerful browser interactions through Puppeteer.

True Open Source Compared to many automation tools in the ecosystem, WebdriverIO is a truly open source project that is run with open governance and owned by a non-profit entity called OpenJS Foundation. This legally binds the project to grow and be directed in the interest of all participants. The project team values openness and collaboration and is not driven by monetary interests.

This makes the project independent in how it is being developed and where it is supposed to go. It allows us to provide free 24/7 support in our community channel as we build a sustainable community that supports and learns from each other. Lastly, it gives a lot of opportunities to the people that contribute and engage with the project due to its open governance.

Mocha is a feature-rich JavaScript test framework running on Node.js and in the browser, making asynchronous testing simple and fun. Mocha tests run serially, allowing for flexible and accurate reporting, while mapping uncaught exceptions to the correct test cases. Hosted on GitHub.

What does TDD mean? TDD is Test Driven Development. This means writing a test that fails because the specified functionality doesn't exist, then writing the simplest code that can make the test pass, then refactoring to remove duplication, etc. You repeat this Red-Green-Refactor loop over and over until you have a complete feature.

What does BDD mean? BDD is Behavior Driven Development. This means creating an executable specification that fails because the feature doesn't exist, then writing the simplest code that can make the spec pass. You repeat this until a release candidate is ready to ship.

What's the difference between TDD and BDD? Those seem pretty similar, right? They are. The key difference is the scope. TDD is a development practice while BDD is a team methodology. In TDD, the developers write the tests while in BDD the automated specifications are created by users or testers (with developers wiring them to the code under test.)

TDD vs BDD: Testing Styles NUnit and MSpec are 2 tools that provide for different styles of developer testing. NUnit promotes the Arrange-Act-Assert style of testing while MSpec requires the Given-When-Then (or Establish context-Because of-It should) style of testing.

BDD Testing Tools Some BDD testing tools include Zephyr scale, Concordian, and FitNesse.

About


Languages

Language:JavaScript 96.1%Language:HTML 2.9%Language:CSS 1.0%