Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Let's get visual - Visual testing in your project
Search
Ramona Schwering
November 24, 2021
Programming
0
150
Let's get visual - Visual testing in your project
Ramona Schwering
November 24, 2021
Tweet
Share
More Decks by Ramona Schwering
See All by Ramona Schwering
Plants vs thieves: Automated Tests in the World of Web Security
leichteckig
0
160
From the Crypt to the Code
leichteckig
0
90
You shall not pass!? A short story of customizable login experiences
leichteckig
0
45
Access Granted!
leichteckig
0
92
Who are vue? Authn in Vue, the important parts
leichteckig
0
73
Vue Fortified: Best Practices for Web App Security
leichteckig
0
130
It's a (testing) trap! - Common end-to-end pitfalls and how to solve them
leichteckig
0
160
Measure and improve frontend performance by using test automation
leichteckig
0
160
You belong here! On hurdles and happiness as women in IT
leichteckig
0
62
Other Decks in Programming
See All in Programming
Google Cloudとo11yで実現するアプリケーション開発者主体のDB改善
nnaka2992
1
160
Django NinjaによるAPI開発の効率化とリプレースの実践
kashewnuts
1
310
TCAを用いたAmebaのリアーキテクチャ
dazy
0
250
Jakarta EE meets AI
ivargrimstad
0
880
Boost Your Web Performance with Hyperdrive
chimame
1
170
メンテが命: PHPフレームワークのコンテナ化とアップグレード戦略
shunta27
0
340
⚪⚪の⚪⚪をSwiftUIで再現す る
u503
0
140
Rubyと自由とAIと
yotii23
6
1.9k
Expoによるアプリ開発の現在地とReact Server Componentsが切り開く未来
yukukotani
2
300
Jakarta EE meets AI
ivargrimstad
0
910
React 19アップデートのために必要なこと
uhyo
8
1.6k
気がついたら子供が社会人になって 自分と同じモバイルアプリエンジニアになった件 / Parent-Child Engineers
koishi
0
140
Featured
See All Featured
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
193
16k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
13
1k
Optimizing for Happiness
mojombo
377
70k
Fashionably flexible responsive web design (full day workshop)
malarkey
406
66k
Six Lessons from altMBA
skipperchong
27
3.6k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
A Tale of Four Properties
chriscoyier
158
23k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.3k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
1.1k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Transcript
None
None
None
[Screenshot eines
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
// First: Loading installation script // Run install script ./vrt-install.sh
// Next: Install Cypress plugin npm install @visual-regression-tracker/agent-cypress
None
None
None
main 6.4.7.0
6.4.7.0 6.4.7.0
None
None
None
None
name: CI on: [push, pull_request] jobs: build: runs-on: ubuntu-latest steps:
- name: Checkout uses: actions/
[email protected]
- name: Install run: yarn - name: Percy Test uses: percy/
[email protected]
with: command: "cypress run" env: PERCY_TOKEN: ${{ secrets.PERCY_TOKEN }}
[Screenshot Percy Gitlab]
None
Percy im Test - Code im Test
None
None
None
None
None
const now = new Date(2018, 1, 1) .getTime(); // freezes
the system time to Jan 1, 2018 cy.clock(now); // continue with your normal tests below
None
// Wait for loading times cy.get('.grid-selection‘) .should('not.exist'); cy.get('.sw-loader') .should('not.exist');
None
None
None
// Command usage await percySnapshot('Home page', { percyCSS: `iframe {
display: none; }` }); version: 1 snapshot: percy-css: | iframe { display: none; }
// An own Command Cypress.Commands.add('changeElementStyling', (selector, imageStyle) => { //
E.g. replace the image with a fixed one cy.get(selector) .invoke('attr', 'style', imageStyle) .should('have.attr', 'style', imageStyle); });
None
None
None
None