{"id":404756,"date":"2023-11-10T12:57:10","date_gmt":"2023-11-10T11:57:10","guid":{"rendered":"https:\/\/blog.jetbrains.com\/?post_type=dotnet&#038;p=404756"},"modified":"2024-07-12T11:41:56","modified_gmt":"2024-07-12T10:41:56","slug":"scott-sauber-test-driven-development-with-blazor-webinar-recording","status":"publish","type":"dotnet","link":"https:\/\/blog.jetbrains.com\/en\/dotnet\/2023\/11\/10\/scott-sauber-test-driven-development-with-blazor-webinar-recording","title":{"rendered":"Scott Sauber &#8211; Test Driven Development with Blazor &#8211; Webinar Recording"},"content":{"rendered":"\n<p>The webinar recording for <strong>Test Driven Development with Blazor<\/strong>, with Director of Engineering at <a href=\"https:\/\/leantechniques.com\/\" target=\"_blank\" rel=\"noopener\">Lean TECHniques<\/a>, Scott Sauber is now available.<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Test Driven Development with Blazor\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/aWY7R7Egm70?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" allowfullscreen><\/iframe>\n<\/div><figcaption class=\"wp-element-caption\">Scott Sauber &#8211; Test Driven Development with Blazor<\/figcaption><\/figure>\n\n\n\n<p>In this session, we will discuss how to do Test Driven Development (TDD) as it applies to Blazor development. We will start with the basics of test-driven development, why you should be doing it, and how it improves the quality of your software. <\/p>\n\n\n\n<p>We&#8217;ll also talk about how you can test-driven development the front end, despite many saying &#8220;it&#8217;s hard&#8221; or even &#8220;impossible&#8221;. All along the way, we will do live coding demos so that you can see test-driven development in action. <\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Agenda<\/h2>\n\n\n\n<ul>\n<li><a href=\"https:\/\/www.youtube.com\/watch?v=aWY7R7Egm70&amp;t=0s\" target=\"_blank\" rel=\"noopener\">00:00 &#8211; Introduction<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.youtube.com\/watch?v=aWY7R7Egm70&amp;t=130s\" target=\"_blank\" rel=\"noopener\">02:10 &#8211; Presentation Start<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.youtube.com\/watch?v=aWY7R7Egm70&amp;t=377s\" target=\"_blank\" rel=\"noopener\">06:17 &#8211; Why do we write tests?<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.youtube.com\/watch?v=aWY7R7Egm70&amp;t=516s\" target=\"_blank\" rel=\"noopener\">08:36 &#8211; What is TDD?<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.youtube.com\/watch?v=aWY7R7Egm70&amp;t=560s\" target=\"_blank\" rel=\"noopener\">09:20 &#8211; How to TDD?<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.youtube.com\/watch?v=aWY7R7Egm70&amp;t=1061s\" target=\"_blank\" rel=\"noopener\">17:41 &#8211; What is NOT TDD?<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.youtube.com\/watch?v=aWY7R7Egm70&amp;t=1327s\" target=\"_blank\" rel=\"noopener\">22:07 &#8211; Applying TDD to Blazor and Tools<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.youtube.com\/watch?v=aWY7R7Egm70&amp;t=1622s\" target=\"_blank\" rel=\"noopener\">27:02 &#8211; What should I test and not test?<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.youtube.com\/watch?v=aWY7R7Egm70&amp;t=2369s\" target=\"_blank\" rel=\"noopener\">39:29 &#8211; Live Coding<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.youtube.com\/watch?v=aWY7R7Egm70&amp;t=3007s\" target=\"_blank\" rel=\"noopener\">50:07 &#8211; Chekov&#8217;s Gun<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.youtube.com\/watch?v=aWY7R7Egm70&amp;t=3628s\" target=\"_blank\" rel=\"noopener\">1:00:28 &#8211; Getting Started \/ No Excuses<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.youtube.com\/watch?v=aWY7R7Egm70&amp;t=3933s\" target=\"_blank\" rel=\"noopener\">1:05:33 &#8211; Q &amp; A<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.youtube.com\/watch?v=aWY7R7Egm70&amp;t=4380s\" target=\"_blank\" rel=\"noopener\">1:13:00 &#8211; Wrap Up and Thanks<\/a><\/li>\n<\/ul>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Links<\/h2>\n\n\n\n<ul>\n<li><a href=\"https:\/\/scottsauber.com\/\" target=\"_blank\" rel=\"noopener\">https:\/\/scottsauber.com<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/twitter.com\/scottsauber\" target=\"_blank\" rel=\"noopener\">https:\/\/twitter.com\/scottsauber<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/leantechniques.com\/\" target=\"_blank\" rel=\"noopener\">https:\/\/leantechniques.com\/<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/github.com\/scottsauber\/talks\/\" target=\"_blank\" rel=\"noopener\">https:\/\/github.com\/scottsauber\/talks\/<\/a><\/li>\n<\/ul>\n\n\n\n<p>&#8211; Slides &#8211;\u00a0<a href=\"https:\/\/scottsauber.com\/wp-content\/uploads\/2023\/11\/TDD-with-Blazor.pdf\" target=\"_blank\" rel=\"noopener\">https:\/\/scottsauber.com\/wp-content\/uploads\/2023\/11\/TDD-with-Blazor.pdf<\/a><br>&#8211; Live Templates &#8211;\u00a0<a href=\"https:\/\/scottsauber.com\/2023\/11\/09\/jetbrains-rider-live-templates\/\" target=\"_blank\" rel=\"noopener\">https:\/\/scottsauber.com\/2023\/11\/09\/jetbrains-rider-live-templates\/<\/a><br>&#8211; Code from Webinar &#8211;\u00a0<a href=\"https:\/\/github.com\/scottsauber\/talks\/tree\/main\/2023-11-09-JetBrains-TDDWithBlazor\" target=\"_blank\" rel=\"noopener\">https:\/\/github.com\/scottsauber\/talks\/tree\/main\/2023-11-09-JetBrains-TDDWithBlazor<\/a><\/p>\n\n\n\n<p>About the presenter:<\/p>\n\n\n    <div class=\"about-author \">\n        <div class=\"about-author__box\">\n            <div class=\"row\">\n                                                            <div class=\"about-author__box-img\">\n                            <img decoding=\"async\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2023\/10\/image.png\" alt=\"\" loading=\"lazy\">\n                        <\/div>\n                                        <div class=\"about-author__box-text\">\n                                                    <h4>Scott Sauber<\/h4>\n                                                <p>Scott Sauber is Director of Engineering at <a href=\"https:\/\/leantechniques.com\/\" target=\"_blank\" rel=\"noopener\">Lean TECHniques<\/a> where he works on some internal initiatives and also works with clients, usually helping them build web apps using some combination of C# and\/or JavaScript, as well as help develop better software engineering cultures.<\/p>\n<p>Besides web stuff, he&#8217;s also really passionate about DevOps, building communities, and technology in general. Scott is extremely passionate about giving back to the software community, because others have helped him (and continue to do so).<\/p>\n<p>Social Links:<\/p>\n<ul>\n<li><a href=\"https:\/\/scottsauber.com\" target=\"_blank\" rel=\"noopener\">https:\/\/scottsauber.com<\/a><\/li>\n<li><a href=\"https:\/\/twitter.com\/scottsauber\" target=\"_blank\" rel=\"noopener\">https:\/\/twitter.com\/scottsauber<\/a><\/li>\n<li><a href=\"https:\/\/leantechniques.com\/\" target=\"_blank\" rel=\"noopener\">https:\/\/leantechniques.com\/<\/a><\/li>\n<\/ul>\n                    <\/div>\n                            <\/div>\n        <\/div>\n    <\/div>\n","protected":false},"author":1079,"featured_media":394028,"comment_status":"closed","ping_status":"closed","template":"","categories":[4992,30],"tags":[2104,211,46,1978,460,792,6183],"cross-post-tag":[],"acf":[],"_links":{"self":[{"href":"https:\/\/blog.jetbrains.com\/en\/wp-json\/wp\/v2\/dotnet\/404756"}],"collection":[{"href":"https:\/\/blog.jetbrains.com\/en\/wp-json\/wp\/v2\/dotnet"}],"about":[{"href":"https:\/\/blog.jetbrains.com\/en\/wp-json\/wp\/v2\/types\/dotnet"}],"author":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/en\/wp-json\/wp\/v2\/users\/1079"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/en\/wp-json\/wp\/v2\/comments?post=404756"}],"version-history":[{"count":4,"href":"https:\/\/blog.jetbrains.com\/en\/wp-json\/wp\/v2\/dotnet\/404756\/revisions"}],"predecessor-version":[{"id":405046,"href":"https:\/\/blog.jetbrains.com\/en\/wp-json\/wp\/v2\/dotnet\/404756\/revisions\/405046"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/en\/wp-json\/wp\/v2\/media\/394028"}],"wp:attachment":[{"href":"https:\/\/blog.jetbrains.com\/en\/wp-json\/wp\/v2\/media?parent=404756"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/en\/wp-json\/wp\/v2\/categories?post=404756"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/en\/wp-json\/wp\/v2\/tags?post=404756"},{"taxonomy":"cross-post-tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/en\/wp-json\/wp\/v2\/cross-post-tag?post=404756"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}