پیشنهاد فرادرس

آموزش تکنیک Test-Driven Development

دسته بندی ها: آموزش های پلورال سایت (Pluralsight)

آموزش-تکنیک-test-driven-development

در این دوره آموزشی با تکنیک Test-Driven Development در برنامه نویسی آشنا می شوید.

Test-Driven Development یا TDD تکنیکی برای توسعه نرم افزار های میباشد. این روش به صورت بالا به پایین انجام میشود یعنی اول یک سری mock ساخته شده کلیات پروژه به صورت نمونه اولیه پیاده سازی میشود و بعد از تایید شدن عملکرد برنامه کد های اصلی با mockها جایگزین میشود. تست ها به صورت test case نوشته میشوند و در نهایت بعد از نوشته شدن کد refactoring صورت میگیرد.

TDD در واقع متدی برای طراحی نرم افزار است نه تست آن البته تست نرم افزار توسط TDD به صورت خیلی شیک انجام میشود شما فرض کنید که یک class دارید که انتظار دارید یک object از نوع user برای شما ایجاد کند و در کل برنامه با این object سر و کار خواهید داشت حالا شما تغییری در پایگاه داده خود میدهید که باعث میشود متد هایی از آین object را دیگر نداشته باشیم بنابر این جاهایی از برنامه که انتظار دارند این متد ها وجود داشته باشند از کار خواهد افتاد ولی اگر از روش TDD استفاده کنیم و برای هر قسمت تست نوشته باشیم قبل از اینکه بعد از تغییرات ما همه سیستم از کار بیفتد ما با استفاده از تست ها میتوانیم متوجه تغییرات در جاهای مختلف سیستم بشویم.

TDD ترکیبی از روش TFD یا Test-First Development و refactoring است. دو دیدگاه مختلف در مورد هدف استفاده از TDD وجود دارد: دیدگاه اول معتقد است که TDD روشی برای تمرکز بیشتر بر روی فاز طراحی میباشد. در واقع هدف اصلی آن استخراج هر بیشتر نیازمندی هاست و این کار را با کمک use case ها و user story ها انجام می دهد. دیدگاه دوم، TDD را یک روش برنامه نویسی می داند. در واقع TDD باعث می شود کد مرتبی نوشته شود که به خوبی کار می کند.

این دوره آموزشی محصول شرکت Pluralsight است.

سرفصل های دوره آموزشی:

  •  آشنایی با TDD
  • کار با Walking Skeleton
  • معرفی Walking Skeleton
  • ارسال یک ورودی
  • راه اندازی یک database
  • معرفی Triangulation
  • کار با Gollum Style
  • استفاده از Simple Web Token through the Spike
  • معرفی Behavior Verification
  • کار با Componentization
  • کار با Data Flow

عنوان دوره آموزشی: Outside-In Test-Driven Development سطح: متوسط مدت زمان: 2 ساعت و 27 دقیقه نویسنده: Mark Seemannلیست سرفصل های دوره آموزشی:

 

This is not a TDD introduction
	 00:30	
Purpose of Outside-In TDD
	 01:10	
Outside-In TDD at a glance
	 01:59	
Testing means many things
	 00:35	
Isn't this simply BDD?
	 01:20	
The agile testing quadrants
	 00:44	
The test pyramid
	 01:31	
Testing at boundary and unit levels
	 00:19	
Outside-In or Bottom-Up
	 00:59	
Walking Skeleton
	 01:34	
Technical constraints
	 01:26	
Demo introduction
	 01:15	
Demo: Getting a response from a Walking Skeleton
	 14:22	
Demo recap
	 01:01	
Demo: Posting an entry
	 03:14	
Demo recap
	 01:03	
Demo: Posting and reading back an entry
	 05:55	
Demo recap
	 00:32	
Did I cheat?
	 00:29	
Summary
	 00:41	
Spiking		 00:28:24	
Introduction
	 00:47	
Application perspective
	 02:49	
FIRST
	 01:26	
Four-Phase Test
	 02:22	
Setting up and tearing down a database
	 01:42	
Demo introduction
	 00:42	
Demo: database setup and teardown
	 06:58	
Demo recap
	 00:33	
Backdoor Manipulation
	 00:45	
Demo introduction
	 00:41	
Demo: spiking
	 06:40	
Demo recap
	 00:42	
Did I cheat?
	 00:42	
Summary
	 01:35	
Triangulation		 00:36:40	
Introduction
	 00:23	
Outside-In versus Bottom-Up
	 00:35	
When to use
	 00:58	
Stimulus/Response
	 00:30	
Triangulation
	 00:50	
Sampling
	 02:12	
Test cases as examples
	 01:11	
Demo introduction
	 00:37	
Demo: Simple Web Token serialization
	 08:01	
Demo recap
	 00:22	
Devil's Advocate. Motivation
	 00:50	
Red/Green/Refactor
	 00:26	
Ping Pong
	 00:51	
Devil's Advocate
	 01:20	
Gollum Style
	 00:35	
Demo introduction
	 00:17	
Demo: Simple Web Token parsing
	 09:07	
Demo recap
	 00:25	
Demo introduction
	 00:29	
Demo: using the Simple Web Token through the Spike
	 04:13	
Demo recap
	 00:26	
Concerns
	 01:05	
Summary
	 00:57	
Behavior Verification		 00:41:02	
Introduction
	 00:33	
Prerequisites
	 01:08	
Outside-In versus Bottom-Up
	 00:29	
Behavior Verification
	 00:20	
How many things can go wrong here?
	 02:15	
Triangulate all the things!
	 01:01	
Triangulate all the things - not
	 00:37	
Cyclomatic Complexity
	 00:47	
Code Coverage
	 00:46	
Componentization
	 01:34	
Dependency Injection required
	 00:23	
Formal proofs
	 00:30	
Data Flow
	 00:30	
Side Effects
	 00:23	
Observation
	 00:17	
Stimulus/Response
	 00:43	
Initial coverage from Outside-In
	 00:30	
Number of tests per unit
	 00:34	
Characterization Tests
	 00:40	
Demo introduction
	 01:07	
Demo: Refactor review; Characterization Tests
	 06:22	
Demo recap
	 00:43	
Demo introduction
	 00:20	
Demo: Data Flow; Side Effects
	 05:00	
Demo recap
	 00:37	
Demo introduction
	 00:14	
Demo: making the user name code robust
	 09:58	
Demo recap
	 00:42	
Monolith
	 00:39	
Summary
	 01:20

حجم فایل: 506MB

Pluralsight Outside In Test Driven Development

پیشنهاد فرادرس