English | Size: 43.62 GB
Genre: eLearning
Learn how to test real sophisticated software written in Go. Small or large, ideal or not, it doesn’t matter what your code looks like – you can test it!
Tell me, if that sounds familiar, you’re learning how to test on Go, and it seems like things are going fine. All the tutorials are super, and you can’t wait to start applying what you are learning to your real projects. You start your editor, grab your last project, create your first * _test.go source file, and suddenly you get the feeling that you don’t understand what you are doing.
* sound of broken glass *
What happened?!?!
Everything went so cool. All these examples made sense, but now you don’t even know where to start.
This “Hello, world” HTTP handler seemed so simple, but how do you test complex handlers? You know, HTTP handlers that do something realistic, for example, insert an entry into a database or use an API to check someone else’s address.
In this regard, how do we verify that our interactions with the database work as we expected? Or maybe your application has a global database variable – does this mean that testing is simply impossible?
What about the APIs we interact with? Will we drown them out? Are we in the API? What happens if we reach the API speed limit or if there isn’t even a test API?
Good good! Take a second to breathe and let me tell you a little secret …
Testing is no more complicated than writing any other Go code. In fact, if we wanted to, we could test our code simply by writing the main package and interacting with the code of our application. We could panic when something is not working, as we expected, and voila – we have a test!
But why is it so hard? Perhaps because we simplify the examples to such an extent that they lose all their value.
Think about it the last time you wrote a function Palindrome? Never? So why do all of these lessons show us how to test them?
Why don’t they show us how to test realistic software? What happened to the example where we are testing a real HTTP handler that needs access to the data store? Or a tutorial in which we create an API and learn how to test it, WITHOUT constantly getting into a real API. Wouldn’t it be great if we could learn to test a real web application with a real database and real integration with a payment API like Stripe?
Testing with Go is different.
In this course, you will learn how to test REAL software, not the features of the palindrome.
We need to look at a few separate examples to study specific testing methods, but this is not enough to consolidate the concept, so we will not stop there. We will create real projects that will teach you how to apply all these testing skills in real software.
In one project, we create a web application that allows us to solve the difficulties that arise when testing an application using a database, third-party APIs and much more. In another project, we will examine how internal testing helps us verify the correctness of our intermediate steps, and also discuss the disadvantages of testing non-exported functions.
You will learn about common errors that should be avoided in order to write more testable code. You will learn how to gradually fix code that has already succumbed to many of these traps.
When you launch the application with a global database variable, you do not need to give up testing. You will learn exactly how to make small, manageable changes to the code that will allow you to start testing it almost immediately.
The next time you are asked whether to mock up a data warehouse or use a real SQL database, you can discuss the pros and cons of both approaches with your teammates and decide on the right course of action.
After completing this course, you will have the knowledge and skills necessary to begin testing your own projects. You still have to do the work, but the secret, confusion and disappointment will disappear.
Testing with Go is divided into two main sections: lessons and projects!
Together, lessons and projects span 173 videos and over 33 hours of content.
In the lessons, we focus on exploring the methods needed to test our applications. We will learn the basics, such as how to write your first test and what table-based testing is, but we will also look at more advanced testing methods, such as:
Testing race conditions
Dependency Injection
Mocks, stubs, and fakes
Testing with HTTP
And much more!
We will spend some time using small isolated examples to learn each technique, but gradually they will become more realistic when you become familiar with testing. Soon we will look at tests that use a real SQL database, test assistants that let us test HTTP endpoints that require authentication, and more.
In projects, we will use everything that we learned in the lessons, and practice their application in creating real software. We will look at some of the most common mistakes you can make when developing an application, as well as how to gradually reorganize your code to make it more testable. We will see first-hand how to separate your integration and unit tests, which allows you to write tests for APIs that can be run both locally and online using a real API. We’ll even consider how to export some of these helper functions so that it’s easier for other users who use your libraries to write tests.
Lessons (Lesson 1-88)
The lessons consist of 88 videos that will gradually lead you out of the simplest exercises, such as writing the first test, up to advanced methods such as interface test suites, dependency injection, and much more.
All lessons are divided into sections, which simplifies the quick transition to the subject that you want to study or view. This means that after a few years, when you need a quick reminder about testing subprocesses, you can quickly find the section you want and return to testing your code with minimal downtime.
Projects (Lessons 89-173)
There are three projects in this course:
form – Go package (AKA library) used to generate HTML forms from Go structures
stripe – an API client used to interact with multiple Stripe payment APIs
swag is a web application that allows users to order sticker packages using the form and stripe packages we created in the first two projects
Each project is created from scratch in order to teach you how to test in real software. For example, we will intentionally make mistakes that make testing our code more difficult, and then look for ways to make it more testable. Or in other cases, we could discuss the trade-offs of one approach versus another before eventually moving forward and writing some code.
FULL PACKAGE
Access to everything. Lessons, projects, source code and future updates.
173 videos totaling more than 33 hours of content.
Watch or download video from any device. You can learn how to test with Go, even if you don’t have Internet access!
Access to all source code used in the course
nitroflare.com/view/33F89C9094BA8CB/TestingwithGo.27.4.part01.rar
nitroflare.com/view/66B9918664C4EA7/TestingwithGo.27.4.part02.rar
nitroflare.com/view/E48444832E3C51F/TestingwithGo.27.4.part03.rar
nitroflare.com/view/5EAC6442F9174CE/TestingwithGo.27.4.part04.rar
nitroflare.com/view/52D53FB691F2EE5/TestingwithGo.27.4.part05.rar
nitroflare.com/view/DD36378D0B50449/TestingwithGo.27.4.part06.rar
nitroflare.com/view/8E3D8FA7273F624/TestingwithGo.27.4.part07.rar
nitroflare.com/view/C9C38037A294106/TestingwithGo.27.4.part08.rar
nitroflare.com/view/6D87B6972A3D45C/TestingwithGo.27.4.part09.rar
nitroflare.com/view/4C82A320E25FA3D/TestingwithGo.27.4.part10.rar
nitroflare.com/view/48862D5B95A19AD/TestingwithGo.27.4.part11.rar
nitroflare.com/view/9BD49CA3CA90B66/TestingwithGo.27.4.part12.rar
nitroflare.com/view/73AA8D0794C8685/TestingwithGo.27.4.part13.rar
nitroflare.com/view/2442A10AF9D82E7/TestingwithGo.27.4.part14.rar
nitroflare.com/view/B062ACD62E2FC62/TestingwithGo.27.4.part15.rar
nitroflare.com/view/A177F427A83694D/TestingwithGo.27.4.part16.rar
nitroflare.com/view/D2102BD8AD1004F/TestingwithGo.27.4.part17.rar
nitroflare.com/view/8DF4971914BE635/TestingwithGo.27.4.part18.rar
nitroflare.com/view/A0730A283A58280/TestingwithGo.27.4.part19.rar
nitroflare.com/view/E2A76F23CE72CB4/TestingwithGo.27.4.part20.rar
nitroflare.com/view/3D6BF0404BF39E4/TestingwithGo.27.4.part21.rar
nitroflare.com/view/5FAF7C780B8F079/TestingwithGo.27.4.part22.rar
nitroflare.com/view/806920295CA31C5/TestingwithGo.27.4.part23.rar
nitroflare.com/view/91A76AE06C6983B/TestingwithGo.27.4.part24.rar
nitroflare.com/view/AB20DF851607BC7/TestingwithGo.27.4.part25.rar
nitroflare.com/view/4CEDF65AC51409D/TestingwithGo.27.4.part26.rar
nitroflare.com/view/14747C21AD0F9CB/TestingwithGo.27.4.part27.rar
nitroflare.com/view/A36BC2B41218D6E/TestingwithGo.27.4.part28.rar
nitroflare.com/view/723E01539026B8A/TestingwithGo.27.4.part29.rar
nitroflare.com/view/18308049B098F96/TestingwithGo.27.4.part30.rar
nitroflare.com/view/2D7B8CEA5C5F2F4/TestingwithGo.27.4.part31.rar
nitroflare.com/view/203E7F3D8A17767/TestingwithGo.27.4.part32.rar
nitroflare.com/view/7C9EE83776AC674/TestingwithGo.27.4.part33.rar
nitroflare.com/view/C6F3DBD499C7B99/TestingwithGo.27.4.part34.rar
nitroflare.com/view/3D394CDA45F0DA9/TestingwithGo.27.4.part35.rar
nitroflare.com/view/CF20B2B314972FC/TestingwithGo.27.4.part36.rar
nitroflare.com/view/050F5E2C31D4F36/TestingwithGo.27.4.part37.rar
nitroflare.com/view/2B9319FD8D3A745/TestingwithGo.27.4.part38.rar
nitroflare.com/view/4E3970D7F2A4C3E/TestingwithGo.27.4.part39.rar
nitroflare.com/view/69D41126FDCCED1/TestingwithGo.27.4.part40.rar
nitroflare.com/view/73F5BC8009F1E6F/TestingwithGo.27.4.part41.rar
nitroflare.com/view/61AC881A58F9CDE/TestingwithGo.27.4.part42.rar
nitroflare.com/view/256BFE0458B3B2F/TestingwithGo.27.4.part43.rar
rapidgator.net/file/af6d4dcb3e1a616baf3a6afeaba84a23/TestingwithGo.27.4.part01.rar.html
rapidgator.net/file/d318ee4c45bf291a090fd77cee7f5529/TestingwithGo.27.4.part02.rar.html
rapidgator.net/file/b9b3437b3d40522d63858ce80b5ba5fa/TestingwithGo.27.4.part03.rar.html
rapidgator.net/file/1c220c511a43d6cc0bb1c33b06f2947d/TestingwithGo.27.4.part04.rar.html
rapidgator.net/file/146181c0911b2a4f8911b9e4b3a28fca/TestingwithGo.27.4.part05.rar.html
rapidgator.net/file/b395bce92e1503d8250925ae7535b541/TestingwithGo.27.4.part06.rar.html
rapidgator.net/file/4ded63c229ce70766169fe6d527a06be/TestingwithGo.27.4.part07.rar.html
rapidgator.net/file/e2d97eda29ead8b972b6f0f428ad89a6/TestingwithGo.27.4.part08.rar.html
rapidgator.net/file/e79bc044f32f669a445fc403b6f766e7/TestingwithGo.27.4.part09.rar.html
rapidgator.net/file/c12d4b1fb2ca20830370ee128c5a8b74/TestingwithGo.27.4.part10.rar.html
rapidgator.net/file/8741d0a3b17e93ff58c12b810d8fc516/TestingwithGo.27.4.part11.rar.html
rapidgator.net/file/e2eeb5ac6f4de06827b7917ef6ac53c8/TestingwithGo.27.4.part12.rar.html
rapidgator.net/file/32286ef74bae64e559984875001257df/TestingwithGo.27.4.part13.rar.html
rapidgator.net/file/246c522c8759592d1b0c8dc4822f635c/TestingwithGo.27.4.part14.rar.html
rapidgator.net/file/c009cab18f24f0518a88f8f7da6fecf4/TestingwithGo.27.4.part15.rar.html
rapidgator.net/file/8e7b9c8dc7748cad8b43456dcb8aaa12/TestingwithGo.27.4.part16.rar.html
rapidgator.net/file/f2847a9a0a177bb32465c46a4bbc55de/TestingwithGo.27.4.part17.rar.html
rapidgator.net/file/0bd262d5faaeaaa9f9cd289967267298/TestingwithGo.27.4.part18.rar.html
rapidgator.net/file/0ce0a91503952d8ee651061d9c093c80/TestingwithGo.27.4.part19.rar.html
rapidgator.net/file/c85f51cb4bd8d7bb34c282679000c435/TestingwithGo.27.4.part20.rar.html
rapidgator.net/file/224120db08970e2e5470ced66d9526cb/TestingwithGo.27.4.part21.rar.html
rapidgator.net/file/b5b054a9e98fbb3400efe99d5861c85f/TestingwithGo.27.4.part22.rar.html
rapidgator.net/file/217bc8a65bcb73e629a54976357b8810/TestingwithGo.27.4.part23.rar.html
rapidgator.net/file/a119930bb01ac44b5d6ca8a312495bfc/TestingwithGo.27.4.part24.rar.html
rapidgator.net/file/36c7c6b6dc479de43e3ae2fddef01bcf/TestingwithGo.27.4.part25.rar.html
rapidgator.net/file/6159c99a53af844c4161ea9f9522506c/TestingwithGo.27.4.part26.rar.html
rapidgator.net/file/160b4f7d3a8978722d6b24d40cadcce7/TestingwithGo.27.4.part27.rar.html
rapidgator.net/file/68304f39ec41cadc7a717acbb642ef76/TestingwithGo.27.4.part28.rar.html
rapidgator.net/file/edeb4b8398bfc1fb1fb123f0290d0e1f/TestingwithGo.27.4.part29.rar.html
rapidgator.net/file/cad7c1b421fbc74a90350f66503ce589/TestingwithGo.27.4.part30.rar.html
rapidgator.net/file/4b8d6f9265d363a4ed0ee9ee1734f46a/TestingwithGo.27.4.part31.rar.html
rapidgator.net/file/7a156d7b47a07335d1cc7e457ca70986/TestingwithGo.27.4.part32.rar.html
rapidgator.net/file/daa4cb169dfd998911b9a86e6e6e8a85/TestingwithGo.27.4.part33.rar.html
rapidgator.net/file/85378ea49ea50ee9052bfdca121fd221/TestingwithGo.27.4.part34.rar.html
rapidgator.net/file/cda011315cf73bda45df4f835d33c8b5/TestingwithGo.27.4.part35.rar.html
rapidgator.net/file/87c1bf185d3211eb475c42bd0f638177/TestingwithGo.27.4.part36.rar.html
rapidgator.net/file/1364dd2f854b061a4b6345b08b0c81be/TestingwithGo.27.4.part37.rar.html
rapidgator.net/file/d424c3068986361b6682a170100de9e7/TestingwithGo.27.4.part38.rar.html
rapidgator.net/file/3c677ada07a7812ac3b3858a6f7ca8ac/TestingwithGo.27.4.part39.rar.html
rapidgator.net/file/de7bc0cfe41e2f1a7e9efdfaafda0539/TestingwithGo.27.4.part40.rar.html
rapidgator.net/file/0112fe32fe1c45b663eabf862b8c0ed8/TestingwithGo.27.4.part41.rar.html
rapidgator.net/file/d35f4c2d7def6e3d952b21c001d94a8e/TestingwithGo.27.4.part42.rar.html
rapidgator.net/file/3e184f3366d20a9c994c2811e5e690c2/TestingwithGo.27.4.part43.rar.html
If any links die or problem unrar, send request to
forms.gle/e557HbjJ5vatekDV9