Autoplay
Autocomplete
Previous Lesson
Complete and Continue
2-6B-3-TestEpisode3(第3篇)-UnitTest(單元測試)、IntegrationTest(整合測試)
關於本課程
FAQ-Handout,SampleCode(常見問題-講義、範例程式碼)
(P1)關於測試 (12:33)
(P2)UnitTest(單元測試)、IntegrationTest(整合測試)、EndToEndTest(端對端測試) (9:58)
(P3-1)導讀Test(1to5)(.NetFramework) (20:19)
(P3-2)導讀Test(1)(.NetFramework) (19:36)
(P3-3)導讀Test(2)(.NetFramework) (31:58)
(P3-4)導讀Test(3)(.NetFramework) (23:22)
(P3-5)導讀Test(4)(.NetFramework) (23:50)
(P3-6)導讀Test(5)(.NetFramework) (16:21)
討論UnitOfWork、Repository觀念
(T48-1)複習和安裝EfPocoGenerator,建立Datable (17:34)
(T48-2)在Database,建立Table (14:25)
(T48-3)在Database,InsertData (15:45)
(T48-4)在Database,建立StoredProcedure、DynamicTSQL (19:34)
(T48-5)在Database,建立StoredProcedure (12:31)
(T48-6)在Database,重新InsertData (1:37)
(T48-7)在Database,建立TestDatabase(測試用資料庫) (2:47)
(T48-8)圖解要怎麼實作UnitOfWork、Repository的觀念 (9:08)
討論PoCoGenerator
(T49-1)在Database,建立Table (6:43)
(T49-2)在假Solution-OnlineGameTwo使用PocoGenerator自動生成EF程式碼 (31:00)
(T49-3)在真Solution-OnlineGame建立DataInterface、DataRepository、測試專案 (35:42)
(T49-4)討論Solution-OnlineGame的ConnectionString (9:39)
討論DbContext、EfModel
(T50-1)對應資料庫Table到DataAccess層的EfModelClass (12:36)
(T50-2)對應資料庫TableRelationship到DataAccess層的EfModelConfigurationClass (15:45)
(T50-3)討論DbContext (9:42)
(T50-4)用Migration指令更新資料庫Table (13:49)
(T50-5)在UiConsoleApp(使用者介面)建立StaticMethod去用Ef存取資料庫Table (6:00)
(T50-6)在UiConsoleApp(使用者介面)呼叫StaticMethod去用Ef存取資料庫Table。執行Find(搜尋資料) (6:52)
(T50-7)在UiConsoleApp(使用者介面)呼叫StaticMethod去用Ef存取資料庫Table。執行Add(新增資料) (13:53)
(T50-8)在UiConsoleApp(使用者介面)呼叫StaticMethod去用Ef存取資料庫Table。執行AddMultiple(新增多筆資料) (6:51)
(T50-9)在UiConsoleApp(使用者介面)呼叫StaticMethod去用Ef存取資料庫Table。執行DeleteMultiple(刪除多筆資料) (10:20)
(T50-10)在UiConsoleApp(使用者介面)呼叫StaticMethod去用Ef存取資料庫Table。執行Delete(刪除資料) (8:52)
(T51-1)用PocoGenerator把資料庫的StoredProcedure連接到在假Solution-OnlineGameTwo的DataAccess層的EF程式碼 (23:02)
(T51-2)在真Solution-OnlineGame把資料庫的StoredProcedure連接到在假Solution-OnlineGameTwo的DataAccess層的EF程式碼 (21:50)
(T51-3)在UiConsoleApp(使用者介面)建立StaticMethod去用Ef存取資料庫StoredProcedure (2:02)
(T51-4)在UiConsoleApp(使用者介面)呼叫StaticMethod去用Ef存取資料庫StoredProcedure。執行SpSearchGamerAndDetail(搜尋多對多資料) (9:07)
(T51-5)在UiConsoleApp(使用者介面)呼叫StaticMethod去用Ef存取資料庫StoredProcedure。執行SpInsertGamerAndDetail(新增多對多資料) (3:19)
(T51-6)在UiConsoleApp(使用者介面)呼叫StaticMethod去用Ef存取資料庫StoredProcedure。執行SpUpdateGamerAndDetail(更新多對多資料) (3:13)
(T51-7)在UiConsoleApp(使用者介面)呼叫StaticMethod去用Ef存取資料庫StoredProcedure。執行SpDeleteGamerAndDetail(刪除多對多資料) (3:08)
(T51-8)討論Migration指令不能建立資料庫StoredProcedure (8:04)
(T51-9)討論ConnectionString (12:42)
討論EfModelRepository、EfModelUnitOfWork
(T52-1)討論EfModelRepository層的GamerDetailRepository、GamerDetailValidator (5:28)
(T52-2)討論EfModelRepository層的GamerRepository、GamerValidator (8:59)
(T53-1)討論EfModelRepository層的GenericRepositoryInterface,IRepository (10:31)
(T53-2)討論EfModelRepository層的OnePkRepositoryInterface,IOnePkWithAllOthersRepository (4:52)
(T53-3)討論EfModelRepository層的GetRepositoryInterface,IGetWithAllOthersRepository (3:29)
(T53-4)討論EfModelRepository層的GetAllRepositoryInterface,IGetAllWithAllOthersRepository (1:06)
(T53-5)討論EfModelRepository層的AddRepositoryInterface,IAddRepository (1:14)
(T53-6)討論EfModelRepository層的DeleteRepositoryInterface,IDeleteRepository (0:57)
(T53-7)討論EfModelRepository層的UpdateRepositoryInterface,InterfaceIUpdateRepository (0:51)
(T53-8)討論EfModelRepository層的GenericRepository,Repository (14:20)
(T53-9)討論EfModelRepository層的AddRepository (10:13)
(T53-10)討論EfModelRepository層的OnePkRepository (5:35)
(T54-1)討論EfModelRepository層的GamerDetailRepository (22:48)
(T54-2)討論EfModelRepository層的GamerRepository (15:43)
(T54-3)討論EfModelRepository層的UnitOfWorkInterface,IUnitOfWork (10:39)
(T54-4)討論EfModelRepository層的UnitOfWork (19:21)
(T55-1)在UiConsoleApp(使用者介面)用Ef存取資料庫Table。討論EfModelRepository層的OnePkRepository執行Add(新增資料) (24:17)
(T55-2)在UiConsoleApp(使用者介面)用Ef存取資料庫Table。討論EfModelRepository層的OnePkRepository執行AddMultiple(新增多筆資料) (6:25)
(T55-3)在UiConsoleApp(使用者介面)用Ef存取資料庫Table。討論EfModelRepository層的OnePkRepository執行Update(更新資料) (17:14)
(T56-1)在UiConsoleApp(使用者介面)用Ef存取資料庫StoredProcedure。執行SpSearchGamerAndDetail(搜尋多對多資料) (24:28)
(T56-2)在UiConsoleApp(使用者介面)用Ef存取資料庫StoredProcedure。執行SpInsertGamerAndDetail(新增多對多資料) (10:59)
(T56-3)在UiConsoleApp(使用者介面)用Ef存取資料庫StoredProcedure。執行SpUpdateGamerAndDetail(更新多對多資料) (5:20)
(T56-4)在UiConsoleApp(使用者介面)用Ef存取資料庫StoredProcedure。執行SpDeleteGamerAndDetail(刪除多對多資料) (6:08)
討論Fake、Comparer
(T57)討論EfModelRepository層的FakeDbContext (21:25)
(T58-1)討論EfModelRepository層的GamerDetailComparer (30:20)
(T58-2)討論EfModelRepository層的GamerComparer (11:03)
(T58-3)討論EfModelRepository層的SpSearchGamerAndDetailReturnModelComparer (10:05)
用NUnit做UnitTest(單元測試)
(T59-1)用NUnit測試EfModelRepository層的GamerDetailComparer (32:01)
(T59-2)用NUnit測試EfModelRepository層的GamerComparer (21:58)
(T59-3)用NUnit測試EfModelRepository層的SpSearchGamerAndDetailReturnModelComparer (29:33)
(T60-1)用NUnit測試EfModelRepository層的GamerDetailValidator (8:04)
(T60-2)用NUnit測試EfModelRepository層的GamerValidator (17:35)
(T61-1)NUnit單元測試EfModelRepository層的GamerDetailRepository的TestInitialize、CleanUp (22:47)
(T61-2)NUnit單元測試EfModelRepository層的GamerDetailRepository的Repository的GetAll(讀取全部資料)和Find(搜尋資料) (30:57)
(T61-3)NUnit單元測試EfModelRepository層的GamerDetailRepository的Repository的SingleOrDefault(搜尋並取第一筆資料) (9:27)
(T61-4)NUnit單元測試EfModelRepository層的GamerDetailRepository的OnePkRepository的Get(用Id取資料) (9:26)
(T61-5)NUnit單元測試EfModelRepository層的GamerDetailRepository的EntityRepository的Get(取得資料和關聯資料) (15:25)
(T61-6)NUnit單元測試EfModelRepository層的GamerDetailRepository的EntityRepository的Add(新增資料)和Delete(刪除資料) (18:48)
(T61-7)NUnit單元測試EfModelRepository層的GamerDetailRepository的EntityRepository的AddMultiple和DeleteMultiple (19:18)
(T61-8)NUnit單元測試EfModelRepository層的GamerDetailRepository的EntityRepository的Update(更新資料) (17:09)
(T61-9)複習用NUnit單元測試觀念 (10:09)
(T61-10)NUnit單元測試EfModelRepository層的GamerRepository的TestInitialize、CleanUp (8:09)
(T61-11)NUnit單元測試EfModelRepository層的GamerRepository的Repository的GetAll(讀取全部資料)和Find(搜尋資料) (20:30)
(T61-12)NUnit單元測試EfModelRepository層的GamerRepository的Repository的SingleOrDefault(搜尋並取第一筆資料) (13:06)
(T61-13)NUnit單元測試EfModelRepository層的GamerRepository的OnePkRepository的Get(用Id取資料) (6:44)
(T61-14)NUnit單元測試EfModelRepository層的GamerRepository的EntityRepository的Get(取得資料和關聯資料) (10:49)
(T61-15)NUnit單元測試EfModelRepository層的GamerRepository的EntityRepository的Add(新增資料)和Delete(刪除資料) (14:12)
(T61-16)NUnit單元測試EfModelRepository層的GamerRepository的EntityRepository的AddMultiple和DeleteMultiple (23:43)
(T61-17)NUnit單元測試EfModelRepository層的GamerRepository的EntityRepository的Update(更新資料) (9:24)
用NUnit做IntegrationTest(整合測試)
(T62-1)NUnit整合測試EfModelRepository層的GamerDetailRepository的TestInitialize、CleanUp (21:58)
(T62-2)NUnit整合測試EfModelRepository層的GamerDetailRepository的Repository的GetAll、Find、SingleOrDefault (12:27)
(T62-3)NUnit整合測試EfModelRepository層的GamerDetailRepository的OnePkRepository的Get(用Id取資料) (2:21)
(T62-4)NUnit整合測試EfModelRepository層的GamerDetailRepository的EntityRepository的Get(取得資料和關聯資料) (1:59)
(T62-5)NUnit整合測試EfModelRepository層的GamerDetailRepository的Add、AddMultiple、Delete、DeleteMultiple (22:04)
(T62-6)NUnit整合測試EfModelRepository層的GamerDetailRepository的EntityRepository的Update(更新資料) (33:32)
(T62-7)NUnit整合測試EfModelRepository層的GamerRepository的TestInitialize、CleanUp (15:34)
(T62-8)NUnit整合測試EfModelRepository層的GamerRepository的Repository的GetAll、Find、SingleOrDefault (7:10)
(T62-9)NUnit整合測試EfModelRepository層的GamerRepository的OnePkRepository的Get(用Id取資料) (1:51)
(T62-10)NUnit整合測試EfModelRepository層的GamerRepository的EntityRepository的Get(取得資料和關聯資料) (2:26)
(T62-11)NUnit整合測試EfModelRepository層的GamerRepository的Add、AddMultiple、Delete、DeleteMultiple (24:53)
(T62-12)NUnit整合測試EfModelRepository層的GamerRepository的EntityRepository的Update(更新資料) (15:38)
(T62-13)不建議NUnit的TestOrder (12:51)
(T63-1)用NUnit執行IntegrationTest(整合測試)Ef存取資料庫StoredProcedure的TestInitialize、CleanUp (11:38)
(T63-2)用NUnit執行IntegrationTest(整合測試)Ef存取資料庫StoredProcedure的SpSearchGamerAndDetailReturnModel (14:02)
(T63-3)用NUnit整合測試SpInsertGamerAndDetail, SpUpdateGamerAndDetail, SpDeleteGamerAndDetail (32:25)
(T63-4)用NUnit執行IntegrationTest(整合測試)Ef存取資料庫StoredProcedure的SpDeleteGamerAndDetail (28:09)
用MSTest做UnitTest(單元測試)
(T64-1)用MSTest測試EfModelRepository層的GamerDetailComparer (7:18)
(T64-2)用MSTest測試EfModelRepository層的GamerComparer (4:43)
(T64-3)用MSTest測試EfModelRepository層的SpSearchGamerAndDetailReturnModelComparer (3:39)
(T65-1)用MSTest測試EfModelRepository層的GamerDetailValidator (8:11)
(T65-2)用MSTest測試EfModelRepository層的GamerValidator (11:01)
(T66-1)MSTest單元測試EfModelRepository層的GamerDetailRepository (11:21)
(T66-2)MSTest單元測試EfModelRepository層的GamerRepository (9:48)
用MSTest做IntegrationTest(整合測試)
(T67-1)MSTest整合測試EfModelRepository層的GamerDetailRepository (9:21)
(T67-2)MSTest整合測試EfModelRepository層的GamerRepository (10:34)
(T68)用MSTest執行IntegrationTest(整合測試)Ef存取資料庫StoredProcedure (9:46)
討論MockingFramework(隔離框架)-Moq、NSubstitute
(T69-1)在EfModelRepository層建立Gamer、GamerDetail的Interface和LuckyReward邏輯 (9:01)
(T69-2)用MockingFramework(隔離框架)Moq隔離Gamer、GamerDetail,用NUnit單元測試LuckyReward (21:12)
(T69-3)用MockingFramework(隔離框架)Moq隔離Gamer、GamerDetail,用MSTest單元測試LuckyReward (5:43)
(T69-4)用MockingFramework(隔離框架)NSubstitute隔離Gamer、GamerDetail,用NUnit單元測試LuckyReward (7:14)
(T69-5)用MockingFramework(隔離框架)NSubstitute隔離Gamer、GamerDetail,用MSTest單元測試LuckyReward (3:56)
(T69-6)結論MockingFramework(隔離框架)Moq、NSubstitute (19:28)
課程評價
課程評價
(T61-7)NUnit單元測試EfModelRepository層的GamerDetailRepository的EntityRepository的AddMultiple和DeleteMultiple
Lesson content locked
If you're already enrolled,
you'll need to login
.
Enroll in Course to Unlock