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
1.2k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Let's get visual - Visual testing in your project
Ramona Schwering
November 24, 2021
More Decks by Ramona Schwering
See All by Ramona Schwering
a11y club: The Cake Is a Lie... And So Is Your Login’s a11y.
leichteckig
0
17
Dangerous Reactivity: Why AI Output Is the New XSS Vue
leichteckig
0
20
React with Caution: How to Hack Your React App (And Fix It Too)
leichteckig
0
14
Vue'tiful Defense
leichteckig
0
82
Workshop: The Cake is a Lie!
leichteckig
0
41
The Cake Is a Lie... And So Is Your Login’s Accessibility
leichteckig
0
220
Plants vs thieves: Automated Tests in the World of Web Security
leichteckig
0
230
From the Crypt to the Code
leichteckig
0
250
You shall not pass!? A short story of customizable login experiences
leichteckig
0
95
Other Decks in Programming
See All in Programming
人間の目はかわらない、だからJPEGは30年もつ
yuzneri
12
19k
ドリフトを絶対に許さない(?)CDK運用 / CDK Ops with Zero Tolerance for Drifts (?)
akihisaikeda
1
210
AI Engineeringは、AIプロダクトだけのものか? 〜AIがソフトウェアを作る時代の新しい当たり前〜 / No AI in your product. AI Engineering in your development.
rkaga
4
470
170k Jobs a Day on GKE: Scaling Mercari's CI Platform - and What's Next for AI-Native Development
junyaokabe
0
110
Claude Code全社展開のためにやったことn選~プラグイン302個・コミッター271人を支えるために~
kenchan
5
1.6k
いまどきの Codex で開発する visionOS アプリの開発スタイルについて
karad
0
150
PHP初心者セッション2026 〜生成AIでは見えない裏側を知る:今だからLAMPを通して仕組みを学ぶ〜
kashioka
0
960
全PRの83%がAIレビューだけでマージできるようになった開発組織はその後どうなったか
athug
1
1.8k
関東Kaggler会_NVIDIA_Nemotron_コンペ_振り返り
rick_ds
0
660
自動化したのに回らない テスト運用の壁―AI時代の品質責任と生産性
mfunaki
0
300
運用ダッシュボードの設計を誰も教えてくれないのだけどみなさんどうしてるんですか? - チームに監視するという文化を根付かせるための第一歩を踏みたい -
satoshi256kbyte
1
130
AI Readyの正体はデータマネジメントだ メダリオン2.0の最前線
freee
PRO
0
300
Featured
See All Featured
Building the Perfect Custom Keyboard
takai
2
840
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.8k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
New Earth Scene 8
popppiees
3
2.5k
Abbi's Birthday
coloredviolet
3
9.4k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
420
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
HDC tutorial
michielstock
2
790
Deep Space Network (abreviated)
tonyrice
0
260
The untapped power of vector embeddings
frankvandijk
2
1.8k
The World Runs on Bad Software
bkeepers
PRO
72
12k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.8k
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