Email Subscription Form

Saturday, February 15, 2020

Why I'll Be Using Cypress For UI Automation

I've mentioned in previous posts that I don't do much UI automation.  This is because the team projects I am currently on have almost no UI, and it's also because I'm a strong believer that we should automate as much as we can at the API level.  But I had an experience recently that got me excited about UI testing again!

I was working on a side project, and I needed to do a little UI automation to test it out.  I knew I didn't want to use Selenium Webdriver, because every time I go to use Webdriver I have so much trouble getting a project going.  Here's a perfect example: just one year ago, I wrote a tutorial, complete with its own GitHub repo, designed to help people get up and running with Webdriver really quickly.  And it doesn't work any more.  When I try to run it, I get an error message about having the wrong version of Chrome.  And that is why I hate Webdriver: it always seems like I have to resolve driver and browser mismatches whenever I want to do anything.



So instead of fighting with Webdriver, I decided to try Cypress.  I had heard good things about it from people at my company, so I thought I'd try it for myself.  First I went to the installation page.  I followed the directions to install Cypress with npm, and in a matter of seconds it was installed.  Then I started Cypress with the npx cypress open command, and not only did it start right up, I also got a welcome screen that told me that there were a whole bunch of example tests installed that I could try out!  And it automatically detected what my browser was, and set the tests to run on that version!  When I clicked on the Run All Tests button, it started running through all the example tests.  Amazing!  In less than five minutes, I had automated tests running.  No more Chrome version must be between 71 and 75 messages for me!

The difference between Cypress and Webdriver is that Cypress runs directly in the browser, as opposed to communicating with the browser.  So there is never a browser-driver mismatch; if you want to run your tests in Firefox, just type npx cypress run --browser firefox, and it will open up Firefox and start running the tests.  It's that easy!  In comparison, think about the last time you set up a new Webdriver project, and how long it took to find the Firefox driver you needed, install it in the right place, make sure you had the PATH configured, and reference it in your test script.

Here are some other great features of Cypress:

  • There's a great tutorial that walks you through how to write simple tests.
  • Every test step has a screenshot associated with it, so you can scroll back in time to see what the browser looked like at each step.
  • Whenever you make a change to your test and save, the test automatically runs in the browser.  You don't need to go back to the command line and rerun a command.
  • You don't have to act like a user.  For example, you can make a simple HTTP request to get an authentication token instead of automating the typing of the username and password in the login fields.  
  • You can stub out methods.  If you wanted to test what happens when a certain request returned an error, you can create a stub method that always returns an error and call that instead of the real method.
  • You can mock HTTP requests.  You can set an HTTP request to return a 404 and see what that response looks like.
  • You can spy on a function to see how many times it was called and what values it was called with.
  • You can manipulate time using the Clock method- for example, you can set it to simulate that a long period of time has elapsed in order to test things like authentication timeouts.
  • You can run tests in parallel (although not on the same browser), and you can run tests in a Continuous Integration environment.

In addition, the Cypress documentation is so clear!  As I was investigating Cypress, it was so easy to find what I was looking for.  

If you are tired of fighting with Webdriver and are looking for an alternative, I highly recommend that you try Cypress.  In less than ten minutes, you can have a simple automated test up and running, and that's a small investment of time that can reap big rewards!


33 comments:

  1. Cypress is an amazing tool and their documentation is one of the best I've seen!

    ReplyDelete
    Replies
    1. Selling USA FRESH SPAMMED SSN Leads/Fullz, along with Driving License/ID Number with EXCELLENT connectivity.

      **PRICE**
      >>2$ FOR EACH LEAD/FULLZ/PROFILE
      >>5$ FOR EACH PREMIUM LEAD/FULLZ/PROFILE

      >All Leads are Tested & Verified.
      >Invalid info found, will be replaced.
      >Serious buyers will be welcome & will give discounts to them.
      >Fresh spammed data of USA Credit Bureau
      >Good credit Scores, 700 minimum scores.

      Email > leads.sellers1212@gmail.com
      Telegram > @leadsupplier
      ICQ > 752822040

      **DETAILS IN EACH LEAD/FULLZ**

      ->FULL NAME
      ->SSN
      ->DATE OF BIRTH
      ->DRIVING LICENSE NUMBER WITH EXPIRY DATE
      ->ADDRESS WITH ZIP
      ->PHONE NUMBER, EMAIL, I.P ADDRESS
      ->EMPLOYEE DETAILS
      ->REALTIONSHIP DETAILS
      ->MORTGAGE INFO
      ->BANK ACCOUNT DETAILS

      ->Bulk order will be preferable
      ->Minimum order 25 to 30 leads/fullz
      ->Hope for the long term business
      ->You can asked for specific states & zips
      ->You can demand for samples if you want to test
      ->Data will be given with in few mins after payment received
      ->Payment mode BTC, PAYPAL & PERFECT MONEY

      **Contact 24/7**

      Email > leads.sellers1212@gmail.com
      Telegram > @leadsupplier
      ICQ > 752822040

      Delete
  2. I like it as well. About parallelization, I’ve used CI to spin up containers in parallel, and there are npms to aggregate their reports

    ReplyDelete
    Replies
    1. can you please elaborate hiw you achieved it.Better if you can create a post and provide a link. thanks

      Delete
  3. Hi, Kristin! I've started learning test automation recently with Capybara (which is a Selenium and Ruby framework as far as I'm concerned) and I have already faced some of the problems you listed.
    Would you recommend newbies learning Cypress first instead of Selenium?

    ReplyDelete
    Replies
    1. Hi Claudio! I can't say definitively, since I only have about an hour of experience with Cypress so far. But so far it looks like a much better starting point for people who are new to UI automation.

      Delete
  4. This comment has been removed by the author.

    ReplyDelete
  5. I've also started using Cypress and have had a great experience so far. The documentation is really good. Also, I love the built-in support for making http requests from within tests. Makes simplifying workflows like Logins very easy.

    ReplyDelete
    Replies
    1. I'm looking forward to trying out the http request functionality in Cypress, and it will be the subject of a future blog post!

      Delete
  6. Thanx a lot! Can't wait for next post about Cypress exploration

    ReplyDelete
  7. I'm glad you liked this post, Valeriya! You can read my latest post on Cypress here: http://thethinkingtester.blogspot.com/2020/02/more-fun-with-cypress.html

    ReplyDelete
  8. Hey Kristin,

    No doubt Cypress installation is awesome and pretty straight forward, however, it has some potential flaws as well . Well , every tools has so no big deal. However , my deep dive reveals certain serious limitations such as

    1. No Support for Trusted Actions ( mouseover- drag drop etc)
    2. Can’t handle multiple tabs and windows
    3. If your website is responsive , then support is limited to emulation by changing view port. No mobile web

    4. When I was automating automation practice.com , in user registration, found error which says DOM changed and Cypress was failed to click.This is similar to StaleElement but could not find any resolution yet
    5. No Safari Support
    6. Not sure how to run in remote machines like GRID
    7. It can’t open sites such as bestbuy.com or Kohls.com its a known issue in GITHUB
    8. Pls try opening http://zero.webappsecurity.com/ in cypress and you will understand its architecture flaw

    ReplyDelete
  9. Very useful post and I think it is rather easy to see from the other comments as well that this post is well written and useful. I bookmarked this blog a while ago because of the useful content and I am never being disappointed. Keep up the good work..
    software testing company
    QA Outsourcing Sevices

    ReplyDelete
  10. Hey Guys !

    USA Fresh & Verified SSN Leads with DL Number AVAILABLE with 99.9% connectivity
    All Leads have genuine & valid information

    **HEADERS IN LEADS**
    First Name | Last Name | SSN | Dob | DL Number | Address | City | State | Zip | Phone Number | Account Number | Bank Name | Employee Details | IP Address

    *Price for SSN lead $2
    *You can ask for sample before any deal
    *If anyone buy in bulk, we can negotiate
    *Sampling is just for serious buyers

    ==>ACTIVE, FRESH CC & CVV FULLZ AVAILABLE<==
    ->$5 PER EACH

    ->Hope for the long term deal
    ->Interested buyers will be welcome

    **Contact 24/7**
    Whatsapp > +923172721122
    Email > leads.sellers1212@gmail.com
    Telegram > @leadsupplier
    ICQ > 752822040

    ReplyDelete
  11. Are you interested in trading bitcoin binary and forex trade where you can earn 100% of your investment daily If you invest as low as $200 you will get a profit of $2,000 after 72 hours if you are intrested you can contact him via email: hackintechnology@gmail.com +12132951376(WHATSAPP)

    ReplyDelete
  12. I think Cypress will be great for UI animation. I am sure that most people who follow the link, and use Cypress for animation will agree with me here. This software is perfect for animation, and I've done a lot of cool animation stuff using this software.

    ReplyDelete
  13. Selling USA FRESH SPAMMED SSN Leads/Fullz, along with Driving License/ID Number with EXCELLENT connectivity.

    **PRICE**
    >>2$ FOR EACH LEAD/FULLZ/PROFILE
    >>5$ FOR EACH PREMIUM LEAD/FULLZ/PROFILE

    >All Leads are Tested & Verified.
    >Invalid info found, will be replaced.
    >Serious buyers will be welcome & will give discounts to them.
    >Fresh spammed data of USA Credit Bureau
    >Good credit Scores, 700 minimum scores.

    Email > leads.sellers1212@gmail.com
    Telegram > @leadsupplier
    ICQ > 752822040

    **DETAILS IN EACH LEAD/FULLZ**

    ->FULL NAME
    ->SSN
    ->DATE OF BIRTH
    ->DRIVING LICENSE NUMBER WITH EXPIRY DATE
    ->ADDRESS WITH ZIP
    ->PHONE NUMBER, EMAIL, I.P ADDRESS
    ->EMPLOYEE DETAILS
    ->REALTIONSHIP DETAILS
    ->MORTGAGE INFO
    ->BANK ACCOUNT DETAILS

    ->Bulk order will be preferable
    ->Minimum order 25 to 30 leads/fullz
    ->Hope for the long term business
    ->You can asked for specific states & zips
    ->You can demand for samples if you want to test
    ->Data will be given with in few mins after payment received
    ->Payment mode BTC, PAYPAL & PERFECT MONEY

    **Contact 24/7**

    Email > leads.sellers1212@gmail.com
    Telegram > @leadsupplier
    ICQ > 752822040

    ReplyDelete
  14. Nice Post! I appreciate to you for this post. I Read Your Blog Its a very nice information blog for me Really you are the best. Thank you for sharing...

    Drop Tester

    ReplyDelete
  15. Hello Dear..
    I appreciate your Informative post and It's very helpful.thanks for sharing Keep it up!

    Testing Instruments | Box Compression Tester Digital | Bursting Strength Tester Digital

    ReplyDelete
  16. Nice information.It cleared my queries on UI Automation.Thanks
    smart home automation

    ReplyDelete
  17. ****Contact Me****
    *ICQ :748957107
    *Gmail :taimoorh944@gmail.com
    *Telegram :@James307


    (Selling SSN Fullz/Pros)

    *High quality and connectivity
    *If you have any trust issue before any deal you may get few to test
    *Every leads are well checked and available 24 hours
    *Fully cooperate with clients
    *Any invalid info found will be replaced
    *Credit score above 700 every fullz
    *Payment Method
    (BTC&Paypal)

    *Fullz available according to demand too i.e (format,specific state,specific zip code & specifc name etc..)

    *Format of Fullz/leads/profiles
    °First & last Name
    °SSN
    °DOB
    °(DRIVING LICENSE NUMBER)
    °ADDRESS
    (ZIP CODE,STATE,CITY)
    °PHONE NUMBER
    °EMAIL ADDRESS
    °Relative Details
    °Employment status
    °Previous Address
    °Income Details
    °Husband/Wife info
    °Mortgage Info


    $2 for each fullz/lead with DL num
    $1 for each SSN+DOB
    $5 for each with Premium info
    (Price can be negotiable if order in bulk)


    OTHER SERVICES ProvIDING

    *(Dead Fullz)
    *(Email leads with Password)

    *(Dumps track 1 & 2 with pin and without pin)

    *Hacking Tutorials
    *Smtp Linux
    *Safe Sock

    *Let's come for a long term Business


    ****Contact Me****
    *ICQ :748957107
    *Gmail :taimoorh944@gmail.com
    *Telegram :@James307

    ReplyDelete
  18. ****Contact Me****
    *ICQ :748957107
    *Gmail :taimoorh944@gmail.com
    *Telegram :@James307


    (Selling SSN Fullz/Pros)

    *High quality and connectivity
    *If you have any trust issue before any deal you may get few to test
    *Every leads are well checked and available 24 hours
    *Fully cooperate with clients
    *Any invalid info found will be replaced
    *Credit score above 700 every fullz
    *Payment Method
    (BTC&Paypal)

    *Fullz available according to demand too i.e (format,specific state,specific zip code & specifc name etc..)

    *Format of Fullz/leads/profiles
    °First & last Name
    °SSN
    °DOB
    °(DRIVING LICENSE NUMBER)
    °ADDRESS
    (ZIP CODE,STATE,CITY)
    °PHONE NUMBER
    °EMAIL ADDRESS
    °Relative Details
    °Employment status
    °Previous Address
    °Income Details
    °Husband/Wife info
    °Mortgage Info


    $2 for each fullz/lead with DL num
    $1 for each SSN+DOB
    $5 for each with Premium info
    (Price can be negotiable if order in bulk)


    OTHER SERVICES ProvIDING

    *(Dead Fullz)
    *(Email leads with Password)

    *(Dumps track 1 & 2 with pin and without pin)

    *Hacking Tutorials
    *Smtp Linux
    *Safe Sock

    *Let's come for a long term Business


    ****Contact Me****
    *ICQ :748957107
    *Gmail :taimoorh944@gmail.com
    *Telegram :@James307

    ReplyDelete
  19. BE SMART AND BECOME RICH IN LESS THAN 3DAYS....It all depends on how fast 
    you can be to get the new PROGRAMMED blank ATM card that is capable of
    hacking into any ATM machine,anywhere in the world. I got to know about 
    this BLANK ATM CARD when I was searching for job online about a month 
    ago..It has really changed my life for good and now I can say I'm rich and 
    I can never be poor again. The least money I get in a day with it is about 
    $50,000.(fifty thousand USD) Every now and then I keeping pumping money 
    into my account. Though is illegal,there is no risk of being caught 
    ,because it has been programmed in such a way that it is not traceable,it 
    also has a technique that makes it impossible for the CCTVs to detect 
    you..For details on how to get yours today, email the hackers on : (
    atmmachinehackers1@gmail.com ). Tell your 
    loved once too, and start to live large. That's the simple testimony of how 
    my life changed for good...Love you all ...the email address again is ;
    atmmachinehackers1@gmail.com

    ReplyDelete
  20. blockchain,non spendable,wallet,key generator,Can you hack Bitcoin private key?How do I find my bitcoin private key?allcryptosoftware.net,What happens if I lost my bitcoin private key?allcryptosoftware.net,How long would it take to brute force a bitcoin private key?allcryptosoftware.net,Can private keys be hacked?allcryptosoftware.net,How is private key generated?allcryptosoftware.net,What do private keys look like?allcryptosoftware.net,How do I retrieve my bitcoin with private key?allcryptosoftware.net,Can stolen bitcoin be recovered?allcryptosoftware.net,Can you recover Bitcoin sent to wrong address?allcryptosoftware.net

    ReplyDelete

  21. FRESH&VALID SPAMMED USA DATABASE/FULLZ/LEADS

    ****Contact****
    *ICQ :748957107
    *Gmail :fullzvendor111@gmail.com
    *Telegram :@James307
    *Skype : Jamesvince$
    <><><><><><><>
    USA SSN FULLZ WITH ALL PERSONAL DATA+DL NUMBER
    -FULLZ FOR PUA & SBA
    -FULLZ FOR TAX REFUND
    $2 for each fullz/lead with DL num
    $1 for each SSN+DOB
    $5 for each with Premium info
    ID's Photos For any state (back & front)
    (Price can be negotiable if order in bulk)
    <><><><><><><><><><><>
    +High quality and connectivity
    +If you have any trust issue before any deal you may get few to test
    +Every leads are well checked and available 24 hours
    +Fully cooperate with clients
    +Any invalid info found will be replaced
    +Payment Method(BTC,USDT,ETH,LTC & PAYPAL)
    +Fullz available according to demand too i.e (format,specific state,specific zip code & specifc name etc..)
    <><><><><><><><><><>
    +US cc Fullz
    +(Dead Fullz)
    +(Email leads with Password)
    +(Dumps track 1 & 2 with pin and without pin)
    +Hacking & Carding Tutorials
    +Smtp Linux
    +Safe Sock
    +Server I.P's
    +HQ Emails with passwords
    <><><><><><><><>
    *Let's do a long term business with good profit
    *Contact for more details & deal

    ReplyDelete
  22. Mdma, metilona, LSD, mefedrona, cocaína, ketamina, anfetamina, efedrina https://alphafarmacia.com/

    Correo electrónico: villalbanestor278@gmail.com
    Whatsapp: +237650646624
    Cristais Ketamina,
    oxicotina
    Adderall
    MATADONA
    Ritalin
    hidrocodona
    efedrina
    Morfina 30MG
    mefedrona
    MDMA
    MDPV
    metilona
    Fenazepam
    butilona
    MDPV
    Cocaína
    oxicotina
    MATADONA
    Ritalin
    clorhidrato de cocaína
    Ritalin
    hidrocodona
    Cocaína pura
    Ketamina
    A la mefedronaCorreo electrónico: villalbanestor278@gmail.com
    Whatsapp: +237650646624

    ReplyDelete
  23. ICQ 678924920 - SELL FULLZ/DL/SSN/DOB/DUMPS
    Hi guys!
    Call me Jack...
    Update August 22, 2021 <11:49 AM>
    LIST CREDIT CARD AND GIFT CARD

    ***** CREDIT CARD & DEBIT CARD
    USA (Best Seller)
    UNITED KINGDOM (Best Seller)
    AUSTRALIA
    CANADA
    FRANCE
    GERMANY
    CHILE
    TAIWAN
    SPAIN
    JAPAN
    ITALY
    BRAZIL

    ***** GIFT CARD
    AMAZON (Best Seller)
    ITUNES (Best Seller)
    BESTBUY
    STARBUCK
    EBAY
    XBOX (Best Seller)
    WALMART
    TARGET

    ***** DEAD FULLZ INFORMATION
    US/UK FULLZ RANDOM BANK
    US/UK FULLZ WITH ALL BANK (CHASE, HSBC, BARCLAYS, etc...)
    VALID PASSPORT - DRIVER'S LICENSE - NATIONAL INSURANCE NUMBER - SSN - DOB
    UPDATED NEW YORK, COLORADO, CALIFORNIA, TEXAS, RHODE ISLAND, ILLINOIS (DRIVER'S LICENSE, SSN, DOB )

    ***** DUMPS WITH PIN + CLONE CARD

    CONTACT ME TO BUY:
    ICQ NUMBER: 678924920
    TELEGRAM: @jackhieu or Link https://t.me/jackhieu (Recommend)
    WHATSAPP: +84774511893
    GMAIL: (ICQ678924920@GMAIL . COM)

    FOLLOW WEBSITE:
    https : / / sellcvvfullzicq678924920 . blogspot . com (Clear space)


    THANK YOUR TIME!

    Tag:
    sell info ssn dob dl, Sell Info Fullz Company
    I Sell Info use it to do PUA and SBA
    Sell Info Fullz SBA
    cvv for sale,
    track 2 dumps, selling dumps cvv fullz,
    track 1 track 2 dumps, buy cc dumps,
    selling dumps with pin,
    dump cvv, track 1&2 dumps with pin,
    cc dumps free, track 1 and track 2 dumps,
    dump cc, fresh dumps, free cvv dumps, track 2 dumps for sale
    Black Market Stolen Credit Card Information cvv fullz dumps, buy cvv dumps verified seller,
    buy dumps online, buy fresh Dumps, credit card cvv information for sale, cvv fullz dumps,
    cvv2 shop, free dead fullz 2021, free fullz 2021, free fullz info, Fresh fullz, fullz shop,
    Legit Cvv Dumps Vendor, sell cc good dumps, Sell cvv cc fresh good,git Cvv Dumps Vendor, sell cc good dumps, Sell cvv cc fresh good, driverlicense, driverlicensephoto, passport, passportphoto, ssn, dob, idphoto, certificate, eincompany, statescertificate, weight, height, greencard,


    VERIFIED SELLER BY ADMIN

    ReplyDelete
  24. buy counterfeit money banknotes USD, EUR, GBP, INR, yuan, Pesos, MYR, AUD, CAD for sale Whatsapp: +1(937) 709-3788 Counterfeit Banknotes for sale has been our job since the past years. We are qualified vendors of Fake Euros Online, Counterfeit Dollar bills for sale, Counterfeit Australian dollar, Counterfeit pounds sterling's, Counterfeit Pounds for sale, and many more. Buying counterfeit Money has been and old business and it has evolved over time, Our exhorts are well trained to traffic the counterfeit money for sale produced by https://www.bluestatescurrencyexchange.com/
    Contact us for more Whatsapp: +1(937)7093788 (bluestatescurrencyexchange@gmail.com)
    https://www.bluestatescurrencyexchange.com/2021/09/15/buy-counterfeit-supernotes-for-sale/
    https://www.bluestatescurrencyexchange.com/2021/09/16/buy-counterfeit-us-dollars-for-sale/

    ReplyDelete

New Blog Location!

I've moved!  I've really enjoyed using Blogger for my blog, but it didn't integrate with my website in the way I wanted.  So I&#...