DevGuide ๐Ÿ‡ต๐Ÿ‡ธ
10.9K subscribers
2.45K photos
17 videos
127 files
3.51K links
Join our channel for top-notch programming hacks, epic discussions, and brilliant career moves. ๐Ÿš€

โšก๏ธ Stay connected with me: linktr.ee/AliSamir

๐Ÿ“ To advertise on the channel: https://telega.io/c/the_developer_guide
Download Telegram
Deep Dive into Reactโ€™s Reconciliation Algorithm: How It Works and How to Master It ๐Ÿ’ฏ

https://dev.to/alisamir/deep-dive-into-reacts-reconciliation-algorithm-how-it-works-and-how-to-master-it-2ih4
โค2
ู…ูู‡ูˆู… ุงู„ู€ End-to-End Test ๐Ÿ’ฏ
.
.
ุฎู„ุงู„ ุฑุญู„ุชูƒ ููŠ ุนุงู„ู… ุงู„ุจุฑู…ุฌุฉุŒ ุฃูƒูŠุฏ ุงุดุชุบู„ุช ุนู„ู‰ Feature ุฌุงู…ุฏุฉุŒ ูˆูƒู†ุช ู…ุชุฃูƒุฏ ุฅู† ุงู„ู€ code ุดุบุงู„ ุฒูŠ ุงู„ูู„. ูƒุชุจุช Unit TestsุŒ ูˆูƒู„ ุงู„ู€ functions ุจุชู€ุฑุฌู‘ุน ุงู„ู„ูŠ ุงู„ู…ูุฑูˆุถ ุชุฑุฌุนู‡. ุจุนุฏ ูƒุฏู‡ ุฌุฑุจุช ุงู„ู€ app ุจุฅูŠุฏูƒุŒ ูƒู„ ุญุงุฌุฉ ู…ุงุดูŠุฉ ุญู„ูˆโ€ฆ ุจุณ ู„ู…ุง ุฑูุนุช ุงู„ูƒูˆุฏ ุนู„ู‰ ุงู„ู€ staging ุฃูˆ ุงู„ู€ productionุŒ ูุฌุฃุฉ ุญุงุฌุงุช ูˆู‚ุนุช! โš ๏ธ

ุงู„ู…ุดูƒู„ุฉ ู‡ู†ุง ุฅู† ุงู„ู„ูŠ ุฃู†ุช ุงุฎุชุจุฑุชู‡ ู…ุด ูƒูุงูŠุฉ... ุฃู†ุช ุงุฎุชุจุฑุช ุฃุฌุฒุงุก ุตุบูŠุฑุฉุŒ ู„ูƒู† ู…ุง ุงุฎุชุจุฑุช ุงู„ุฑุญู„ุฉ ูƒุงู…ู„ุฉ ู…ู† ุฃูˆู„ ู…ุง ุงู„ู€ user ูŠูุชุญ ุงู„ู€ app ู„ุญุฏ ู…ุง ูŠูˆุตู„ ู„ู‡ุฏูู‡.

ูˆู‡ู†ุง ุจูŠูŠุฌูŠ ุฏูˆุฑ ุงู„ู€ End-to-End Testing (E2E)...

โ€”โ€”โ€”

๐ŸŽฏ ูŠุนู†ูŠ ุฅูŠู‡ End-to-End TestุŸ


ุงู„ู€ End-to-End Test ุจุจุณุงุทุฉ ู‡ูˆ ู†ูˆุน ู…ู† ุฃู†ูˆุงุน ุงู„ู€ Testing ุงู„ู„ูŠ ุจูŠุญุงูƒูŠ ุชุตุฑูุงุช ุงู„ู€ user ุงู„ุญู‚ูŠู‚ูŠุฉ.
ุจู†ุฎุชุจุฑ ุงู„ู€ system ูƒู€ โ€œุตู†ุฏูˆู‚ ุฃุณูˆุฏโ€ ู…ู† ุบูŠุฑ ู…ุง ู†ู‡ุชู… ุจุงู„ุชูุงุตูŠู„ ุงู„ุฏุงุฎู„ูŠุฉุŒ ุฅุญู†ุง ุจุณ ุนุงูˆุฒูŠู† ู†ุชุฃูƒุฏ ุฅู† ุงู„ู€ app ุจูŠุดุชุบู„ ุฒูŠ ู…ุง ุงู„ู€ user ู…ุชูˆู‚ุน ุจุงู„ุถุจุทุŒ ู…ู† ุฃูˆู„ ุฎุทูˆุฉ ู„ุขุฎุฑ ุฎุทูˆุฉ.

ูŠุนู†ูŠ ุจู†ุจุฏุฃ ู…ู† ุงู„ู€ UIุŒ ูˆู†ุชูุงุนู„ ู…ุน ุงู„ู€ buttons ูˆุงู„ู€ forms ูˆุงู„ู€ linksุŒ ูˆุจู†ุดูˆู ู‡ู„ ุงู„ู€ backend ุจูŠุฑุฏ ุฒูŠ ู…ุง ุงู„ู…ูุฑูˆุถุŸ ู‡ู„ ุงู„ู€ database ุงุชุญุฏุซุชุŸ ู‡ู„ ุงู„ู†ุชูŠุฌุฉ ุงู„ู„ูŠ ุธู‡ุฑุช ู„ู„ู…ุณุชุฎุฏู… ู…ู†ุทู‚ูŠุฉุŸ

โ€”โ€”โ€”

๐Ÿ“Œ ุฅู…ุชู‰ ุชุณุชุฎุฏู… ุงู„ู€ E2EุŸ


- ู„ู…ุง ุชูƒูˆู† ุจุชุณู„ู… Feature ู…ู‡ู…ุฉ ุฌุฏู‹ุงุŒ ุฒูŠ ุนู…ู„ูŠุฉ ุฏูุน ุฃูˆ ุชุณุฌูŠู„ ุฏุฎูˆู„.
- ู„ูˆ ุงู„ู€ app ููŠู‡ flows ู…ุนู‚ุฏุฉ ุฃูˆ steps ูƒุชูŠุฑ ูˆุจุชุนุชู…ุฏ ุนู„ู‰ ุจุนุถ.
- ู„ู…ุง ุชุญุจ ุชุชุฃูƒุฏ ุฅู† ุงู„ู€ integration ุจูŠู† ุงู„ู€ frontend ูˆุงู„ู€ backend ุดุบุงู„ ุชู…ุงู….
- ูˆู‚ุช ุงู„ู€ releaseุŒ ุนู„ุดุงู† ุชุทู…ู† ุฅู† ุงู„ู€ system ูƒูƒู„ ุดุบุงู„ ุณู„ูŠู… ู…ู† ุงู„ุฃูˆู„ ู„ู„ุขุฎุฑ.

โ€”โ€”โ€”

๐Ÿ›  ุฃุดู‡ุฑ ุฃุฏูˆุงุช ุงู„ู€ End-to-End Testing


- ุงู„ู€ Cypress: ุณู‡ู„ุŒ ูˆุงุถุญุŒ ุจูŠุดุชุบู„ ุนู„ู‰ ุงู„ู…ุชุตูุญุŒ ูˆุจูŠุฎู„ูŠูƒ ุชู€ debug ุจุณู‡ูˆู„ุฉ.
- ุงู„ู€ Playwright: ุณุฑูŠุน ูˆุจูŠุฏุนู… browsers ูƒุชูŠุฑุŒ ูˆู…ู…ุชุงุฒ ู„ู„ู€ automation.
- ุงู„ู€ Selenium: ู‚ุฏูŠู… ูˆุชู‚ูŠู„ ุดูˆูŠุฉุŒ ุจุณ ู„ุณู‡ ู†ุงุณ ุจุชุณุชุฎุฏู…ู‡ ุนุดุงู† ู…ุฑู† ูˆุจูŠุดุชุบู„ ุจู„ุบุงุช ู…ุฎุชู„ูุฉ.

โ€”โ€”โ€”

โš™๏ธ ุฃู…ุซู„ุฉ ุนู„ู‰ Scenarios ู…ู…ูƒู† ู†ุนู…ู„ู‡ุง E2E Test


- ู…ุณุชุฎุฏู… ุจูŠุณุฌู„ ููŠ ุงู„ู…ูˆู‚ุนุŒ ุจูŠุฑุฌุนู„ู‡ confirmation message.
- ู…ุณุชุฎุฏู… ุจูŠุฏุฎู„ ุจูŠุงู†ุงุช ูƒุฑูŠุฏุช ูƒุงุฑุฏ ูˆุจุชุชู… ุนู…ู„ูŠุฉ ุงู„ุฏูุน.
- ู…ุณุชุฎุฏู… ุจูŠุนู…ู„ login ูˆุจูŠุชู†ู‚ู„ ุนู„ู‰ ุงู„ู€ dashboard.
- ู…ุณุชุฎุฏู… ุจูŠุจุนุช ููˆุฑู… contact us ูˆุชูˆุตู„ู‡ ุฑุณุงู„ุฉ ุชุฃูƒูŠุฏ.

โ€”โ€”โ€”

๐Ÿ’ก ู„ูŠู‡ ุงู„ู€ E2E Tests ู…ู‡ู…ุฉุŸ


- ุจุชู…ู†ุน ุงู„ู€ regressions ุงู„ู„ูŠ ู…ู…ูƒู† ุชุญุตู„ ุจุนุฏ ุชุบูŠูŠุฑุงุช ูƒุจูŠุฑุฉ.
- ุจุชูƒุดู bugs ู…ุด ู…ู…ูƒู† ุชูƒุชุดูู‡ุง ุจุงู„ู€ Unit ุฃูˆ ุงู„ู€ Integration tests.
- ุจุชุฏูŠูƒ confidence ุฅู† ุงู„ู€ system ูƒูƒู„ ุดุบุงู„ ุฒูŠ ู…ุง ุงู„ู…ูุฑูˆุถ.
- ุจุชุณุงุนุฏ ุงู„ูุฑูŠู‚ ูƒู„ู‡ (frontend, backend, QA) ูŠูƒูˆู†ูˆุง ู…ุทู…ู†ูŠู† ู‚ุจู„ ุฃูŠ release.

โ€”โ€”โ€”

โš ๏ธ ุจุณ ุฎู„ูŠ ุจุงู„ูƒ...


ุงู„ู€ E2E Tests ุชู‚ูŠู„ุฉ ููŠ ุงู„ู€ executionุŒ ูˆุจุทูŠุฆุฉ ู…ู‚ุงุฑู†ุฉู‹ ุจุงู„ุฃู†ูˆุงุน ุงู„ุชุงู†ูŠุฉ.
ูุนุดุงู† ูƒุฏู‡ ุจู†ูƒุชุจ ู…ู†ู‡ุง ุจุณ ุงู„ู€ critical flowsุŒ ู…ุด ูƒู„ ุญุงุฌุฉ.

ูƒู…ุงู† ุฃูŠ ุชุบูŠูŠุฑ ุจุณูŠุท ููŠ UI ู…ู…ูƒู† ูŠูƒุณุฑู‡ุงโ€ฆ ูู„ุงุฒู… ุชูƒุชุจู‡ุง ุจุดูƒู„ ูƒูˆูŠุณ ูˆู‚ุงุจู„ ู„ู„ุตูŠุงู†ุฉ.

โ€”โ€”โ€”

๐Ÿ’ก ู†ุตุงุฆุญ ู„ูˆ ู‡ุชุจุฏุฃ ุชูƒุชุจ E2E Tests:


- ุงุจู†ูŠ test ู„ูƒู„ user journey ู…ู‡ู…ุฉ.
- ุญุงูˆู„ ุชุนุฒู„ ุงู„ู€ data ุงู„ู„ูŠ ุจุชุณุชุฎุฏู…ู‡ ููŠ ุงู„ุชุณุช (ุงุณุชุฎุฏู… mocks ุฃูˆ test accounts).
- ุญุงูุธ ุนู„ู‰ naming ูˆุงุถุญ ูˆุณู‡ู„ ููŠ ุงู„ู€ tests.
- ุดุบู‘ู„ู‡ุง ููŠ CI/CD pipeline ุนุดุงู† ุชู…ุณูƒ ุงู„ู…ุดุงูƒู„ ู‚ุจู„ ู…ุง ุชูˆุตู„ ู„ู„ู†ุงุณ.

โ€”โ€”โ€”

ุงู„ู€ E2E Testing ู‡ูˆ ุฎุท ุงู„ุฏูุงุน ุงู„ุฃุฎูŠุฑุŒ ุงู„ู„ูŠ ุจูŠุฃูƒุฏ ุฅู† ูƒู„ ุญุงุฌุฉ ู…ุงุดูŠุฉ ุชู…ุงู… ู…ู† ู…ู†ุธูˆุฑ ุงู„ู…ุณุชุฎุฏู….
ูˆูƒู…ุงู† ู‡ูˆ ุงู„ู„ูŠ ุจูŠุฎู„ูŠูƒ ุถุงู…ู† ุฅู† ุงู„ู€ feature ุงู„ู„ูŠ ุชุนุจุช ููŠู‡ุง ู…ุด ู‡ุชุจูˆุธ ู„ู…ุง ุชุทู„ุน production.

โ€”โ€”โ€”

ูˆูู‚ูƒู… ุงู„ู„ู‡ ู„ูƒู„ ุฎูŠุฑ ๐ŸŒฟ
โค12
Gallery Layout using CSS Grids in 5 steps ๐Ÿ’ฏ
โค7
9 Essential Books Every Software Engineer Should Read โœ…
โค6
ู„ูŠู‡ ุจู†ุณุชุฎุฏู… ุงู„ู€ ORMุŸ ๐Ÿค”
.
.
ุชุนุงู„ ู†ุฏุฑุฏุด ุดูˆูŠุฉ ุนู† ุญุงุฌุฉ ู…ู…ูƒู† ุชุบูŠู‘ุฑ ุทุฑูŠู‚ุฉ ุดุบู„ูƒ ู…ุน ุงู„ู€ database ูˆุชูˆูู‘ุฑ ุนู„ูŠูƒ ูˆู‚ุช ูˆู…ุฌู‡ูˆุฏ ูƒุจูŠุฑ ุฌุฏู‹ุงโ€ฆ ูˆู‡ูŠ ุงู„ู€ ORM.

ู„ูƒู† ู‚ุจู„ ู…ุง ู†ุฏุฎู„ ููŠ ุงู„ุชูุงุตูŠู„ ุชุนุงู„ ู†ุฑุฌุน ูˆุฑุง ุดูˆูŠุฉ...

ูุงูƒุฑ ุฃูˆู„ ู…ุฑุฉ ุชุนู„ู…ุช ููŠู‡ุง ุฅุฒุงูŠ ุชุชุนุงู…ู„ ู…ุน ุงู„ู€ databaseุŸ

โ€”โ€”โ€”

๐Ÿ”— LinkedIn:
https://www.linkedin.com/posts/mentoor-io_orm-database-backend-activity-7348410219284041728-uaep

๐Ÿ”— Qabilah:
https://qabilah.com/posts/ku4aLi4n2rs

๐Ÿ”— Facebook:
https://www.facebook.com/share/p/1BFsS16jZj
โค4
Rest API Fundamentals ๐Ÿ’ฏ
โค8