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 - Visuelles Testing in Deinem ...
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Ramona Schwering
April 16, 2021
Programming
0
140
Let's get visual - Visuelles Testing in Deinem Symfony Projekt
Ramona Schwering
April 16, 2021
Tweet
Share
More Decks by Ramona Schwering
See All by Ramona Schwering
Vue'tiful Defense
leichteckig
0
37
Workshop: The Cake is a Lie!
leichteckig
0
19
The Cake Is a Lie... And So Is Your Login’s Accessibility
leichteckig
0
160
Plants vs thieves: Automated Tests in the World of Web Security
leichteckig
0
210
From the Crypt to the Code
leichteckig
0
200
You shall not pass!? A short story of customizable login experiences
leichteckig
0
79
Access Granted!
leichteckig
0
130
Who are vue? Authn in Vue, the important parts
leichteckig
0
110
Vue Fortified: Best Practices for Web App Security
leichteckig
0
150
Other Decks in Programming
See All in Programming
Cyrius ーLinux非依存にコンテナをネイティブ実行する専用OSー
n4mlz
0
230
AIに任せる範囲を安全に広げるためにやっていること
fukucheee
0
150
ふつうの Rubyist、ちいさなデバイス、大きな一年
bash0c7
0
1.1k
生成 AI 時代のスナップショットテストってやつを見せてあげますよ(α版)
ojun9
0
280
20260315 AWSなんもわからん🥲
chiilog
2
170
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
700
AI時代の脳疲弊と向き合う ~言語学としてのPHP~
sakuraikotone
1
1.4k
Agentic AI: Evolution oder Revolution
mobilelarson
PRO
0
190
存在論的プログラミング: 時間と存在を記述する
koriym
3
280
PHPのバージョンアップ時にも役立ったAST(2026年版)
matsuo_atsushi
0
210
maplibre-gl-layers - 地図に移動体たくさん表示したい
kekyo
PRO
0
320
Linux Kernelの1文字のミスで 権限昇格ができた話
rqda
0
2k
Featured
See All Featured
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.2k
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
Bash Introduction
62gerente
615
210k
Designing for humans not robots
tammielis
254
26k
Chasing Engaging Ingredients in Design
codingconduct
0
150
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
1
1.4k
Building Flexible Design Systems
yeseniaperezcruz
330
40k
Technical Leadership for Architectural Decision Making
baasie
3
300
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
75
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
0
180
Google's AI Overviews - The New Search
badams
0
940
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
150
Transcript
None
None
None
[Screenshot eines Visual bugs]
None
None
None
None
None
None
None
None
None
Nimm Cypress oder Panther… lege Screenshots irgendwo hin… mache Screenshots
im Test und vergleiche sie
None
Applitools Percy Storybook Open Source Plugins … und viele mehr
…
None
npm install --save-dev @percy/cypress … oder … yarn add --dev
@percy/cypress Installation
Einbindung // Am Anfang der cypress/support/commands.js import '@percy/cypress'; // In
cypress/plugins/index.js let percyHealthCheck = require(‚@percy/cypress/task'); module.exports = (on, config) => { on("task", percyHealthCheck); };
it('should screensshot', () => { cy.visit('/'); // Takes snapshot cy.percySnapshot('Titel');
}); Percy im Test
Percy im Test - Code im Test Percy als Tool
None
None
[Screenshot Percy Gitlab]
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 Zeit auf dem Client beeinflussen
None
Warten bis alles fertig ist // Beispiel: Ladezustände abwarten cy.get('.sw-data-grid__skeleton')
.should('not.exist'); cy.get('.sw-loader') .should('not.exist');
None
// Ein eigenes Command Cypress.Commands.add('changeElementStyling', (selector, imageStyle) => { //
Hier z.B. das Bild mit einem anderen ersetzen cy.get(selector) .invoke('attr', 'style', imageStyle) .should('have.attr', 'style', imageStyle); }); Ins CSS der Seite eingreifen
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 }} Github Action
None
None
None
None
None