Why Choose WebdriverIO? - Sneak Peak Web App Testing Course

Поделиться
HTML-код
  • Опубликовано: 16 сен 2024

Комментарии • 15

  • @kyonas6047
    @kyonas6047 Год назад

    Im working on next js project (node js) using Tauri(rust+web tech +cross platform)
    And i saw that i was able to use web driver and i have never heard about it before so Im confused a little lol

  • @rm9125
    @rm9125 3 года назад +2

    Hi. Thank you for sharing your knowledge. Are you planning to share some video on implementation? I am really interested in the tool and went through a tutorial in the past, just didn't go in depth because had to make a choice: advancing my Java or learning JavaScript deeper and switch to WebDriverIO

    • @frontendtesting
      @frontendtesting  3 года назад +1

      I most certainly will be sharing implementation details. This video is part of a course on WebdriverIO, which is an extension of my book on the subject: leanpub.com/webapp-testing-guidebook

    • @rm9125
      @rm9125 3 года назад +1

      @@frontendtesting Looked through the book content, pretty interesting content. How much of JS one needs to know to be comfortable through the book?

    • @frontendtesting
      @frontendtesting  3 года назад +1

      @@rm9125 You do need to be familiar with JS, but you don't have to be an expert at it. I don't cover the basics of JS at all, but I do talk a little bit when we get in to some more complicated topics.

  • @piyushmathpal4244
    @piyushmathpal4244 3 года назад

    Hi, need to know the difference when clicking/finding an element using selenium vs the same operations on the element using webdIO?
    PS: Although webdIO is based on top of selenium apis but then why it doesn't throw common exceptions faced while using selenium(staleElement,NotVisible,xyz...)?

    • @thunderxero
      @thunderxero 3 года назад

      staleElement,NotVisible, those are elements that have changed in the DOM of your application

  • @gonzaloespeche1499
    @gonzaloespeche1499 3 года назад

    Hi Kevin!
    Do you know if WebdriverIO supports the ability to mock functions used inside a React component that will, depending on certain conditions, output different HTML onto the browser? Something similar to what Jest provides: jestjs.io/docs/en/mock-functions
    I opened a question in Stack Overflow but no one has answered yet :sad-meme-drinking-whiskey:
    stackoverflow.com/questions/65597674/webdriverio-e2e-tests-mock-a-function-called-inside-a-react-component
    Thanks in advance and I hope I made myself clear!

  • @adarshnamdev5834
    @adarshnamdev5834 3 года назад

    @5:08 I'm sorry, but do you mean to say that a tester can write test scripts using Python? I have been using python mostly and out of touch with Java... So can I use Python with WebdriverIO for automated testing?

    • @frontendtesting
      @frontendtesting  3 года назад +1

      You can write automated tests in Python, but not using WebdriverIO. WebdriverIO is Node.js based. There are tools for Python though; I think Robot Framework is one:
      robotframework.org/

    • @blassx31
      @blassx31 3 года назад +1

      You can use selenium with python along with pytest

  • @BunyiSordera
    @BunyiSordera 2 года назад

    I am working in an angular application with WebdriverIO using cucumnber and also with Jasmine (separate projects). I found no big advantage over selenium webdriver. Please Correct me if im wrong in any of the points below:
    1) You still have to use explicit waits so the "auto-wait" is pretty much the same as the waits you can do with selenium. For the framework to work, I had to implement explicit waits in every method.
    2)The "shorter" commands - take in count that you have to add the "await" keyword in WebdriverIO for every command or even some horrible approaches I saw using chainable promises :( . Of course that issue is lowered for WebdriverIO and Selenium if you create wrapper methods. In a real framework you wont be writing: driver.findelement(By.xpath("/Here your Xpath/")); for every single element interaction.
    3)Grouping tests in Jasmine is painful and not very flexible. Cucumber has more flexible tags to group tests but you have to add that extra layer of Feature files (Gherkin).
    4) I found harder to find errors in VS studio with WebdriverIO. Selenium with eclipse or intellij is easier to track the error (failure trace).
    5) WebdriverIO has less documentation compared to selenium, which made me suffer :)

    • @frontendtesting
      @frontendtesting  2 года назад

      Hey, thanks for the very well-thought out comment. I ended up doing a video response to the points you made. Would love to hear your further thoughts on this:
      ruclips.net/video/OazKAn4uB4Q/видео.html

    • @TestAutomationHub
      @TestAutomationHub 2 года назад

      1) we don't have to use explicit wait before all method. waitforTimeout used smartly will do the job in almost every element (unless few elements takes longer than usual). but yeah very similar to selenium
      2) even for wrapper you have to write logic to handle type of locator like xpath, id, css where as in webdriverio you don't
      3) Agreed cucumber has better group but with mocha or jasmin also you can create suites as per your need check grouping-test-specs-in-suites in webdriverIO official doc
      4) WebdriverIO provides flexibility of displaying different level of log with just a string change in wdio.conf file and it generates great error stack with even line of code that is causing issue.
      5) Agreed as selenium has large user based and webdriverio is still growing. need a lot of work to update the doc
      Apart from all these few points
      -------------------------------------------------
      - Driver setup need good expertise to configure and for parallel execution again thread safety and all you need to manage. Webdriverio does it for you with basic setup, no additional configuration required and also have option to customize as per need.
      - Report configuration in selenium is again need expertise, explicit implementation of listeners to use report effectively. WebdriverIO again does with just npm run command and two line of update in report section
      = you can control almost all set up of wdio,conf file from commandline
      - fetching network logs is super easy with wedriverio
      - cloud integration like browserstack can be done with minimum line of changes in wdio.conf file
      - Only challenge I see is use of async/await but I guess we have more benefit to look. End of the day it all depends on requirement, skills set of person going to work on automation and compatible language.