Testing: Difference between revisions
Jump to navigation
Jump to search
(19 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
=External= | =External= | ||
* [https://www.amazon.com/xUnit-Test-Patterns-Refactoring-Addison-Wesley-ebook/dp/B004X1D36K/ref=sr_1_3 xUnit Test Patterns] by Gerard Meszaros. | |||
* Simple Testing Can Prevent Most Critical Failures: An Analysis of Production Failures in Distributed Data-Intensive Systems by Ding Yuan, Yu Luo https://www.usenix.org/system/files/conference/osdi14/osdi14-paper-yuan.pdf | |||
* O'Reilly The Art of Software Testing http://shop.oreilly.com/product/9781118031964.do | |||
* Mutate Your Code and Reveal Your True Test Coverage http://www.infoq.com/presentations/code-mutate-test | * Mutate Your Code and Reveal Your True Test Coverage http://www.infoq.com/presentations/code-mutate-test | ||
* http://cafe.elharo.com/testing/harolds-corollary-to-knuths-law/ | * http://cafe.elharo.com/testing/harolds-corollary-to-knuths-law/ | ||
* Christian Nelson's SDForum JavaSIG presentation, Oct 6, 2009 [[File:Web Application Testing - Christian Nelson.pdf|Web Application Testing - Christian Nelson]]. Companion source code available at http://svn.carbonfive.com/public/christian/gearlist/branches/sdforum/. README file available at http://svn.carbonfive.com/public/christian/gearlist/branches/sdforum/docs/readme.txt. | * Christian Nelson's SDForum JavaSIG presentation, Oct 6, 2009 [[File:Web Application Testing - Christian Nelson.pdf|Web Application Testing - Christian Nelson]]. Companion source code available at http://svn.carbonfive.com/public/christian/gearlist/branches/sdforum/. README file available at http://svn.carbonfive.com/public/christian/gearlist/branches/sdforum/docs/readme.txt. | ||
* | * Testing the Endpoints of Your REST APIs https://www.infoq.com/presentations/rest-api-testing-postman | ||
* Effective Test Automation Approaches for Modern CI/CD Pipelines https://www.infoq.com/articles/test-automation-ci-cd/ | |||
=Internal= | =Internal= | ||
* [[Software_Engineering#Testing|Software Engineering]] | |||
* [[JUnit]] | * [[JUnit]] | ||
* [[TestNG]] | * [[TestNG]] | ||
* [[Mockito]] | |||
* [[PowerMock]] | |||
=Fundamentals and Conventions= | =Fundamentals and Conventions= | ||
Line 16: | Line 21: | ||
* A <tt>...TestBase</tt> is an abstract class that has a protected abstract <tt>get...ToTest()</tt> method. | * A <tt>...TestBase</tt> is an abstract class that has a protected abstract <tt>get...ToTest()</tt> method. | ||
* If in developing a <tt>SomethingBase</tt> we want to test the base behavior at its own layer, then conventionally we should use a <tt>SomethingTestBase</tt> (and not a <tt>SomethingBaseTestBase</tt>). | * If in developing a <tt>SomethingBase</tt> we want to test the base behavior at its own layer, then conventionally we should use a <tt>SomethingTestBase</tt> (and not a <tt>SomethingBaseTestBase</tt>). | ||
=<span id='Mock'></span><span id='Stub'></span>Concepts= | |||
{{Internal|Software Testing Concepts|Testing Concepts}} | |||
=To Process= | =To Process= | ||
* Lessons Learned in Software Testing: A Context-Driven Approach https://www.amazon.com/Lessons-Learned-Software-Testing-Context-Driven/dp/0471081124 | * Lessons Learned in Software Testing: A Context-Driven Approach https://www.amazon.com/Lessons-Learned-Software-Testing-Context-Driven/dp/0471081124 | ||
* https://medium.com/@copyconstruct/testing-microservices-the-sane-way-9bb31d158c16 | |||
* Five Factor Testing https://www.devmynd.com/blog/five-factor-testing/ | |||
* https://testing.googleblog.com/2013/07/testing-on-toilet-know-your-test-doubles.html | |||
* Property-based Testing http://propertesting.com | |||
* https://martinfowler.com/articles/practical-test-pyramid.html | |||
* Contract testing: https://docs.pact.io. Also see [[Consumer-Driven Contract]]. |
Latest revision as of 23:40, 2 July 2023
External
- xUnit Test Patterns by Gerard Meszaros.
- Simple Testing Can Prevent Most Critical Failures: An Analysis of Production Failures in Distributed Data-Intensive Systems by Ding Yuan, Yu Luo https://www.usenix.org/system/files/conference/osdi14/osdi14-paper-yuan.pdf
- O'Reilly The Art of Software Testing http://shop.oreilly.com/product/9781118031964.do
- Mutate Your Code and Reveal Your True Test Coverage http://www.infoq.com/presentations/code-mutate-test
- http://cafe.elharo.com/testing/harolds-corollary-to-knuths-law/
- Christian Nelson's SDForum JavaSIG presentation, Oct 6, 2009 File:Web Application Testing - Christian Nelson.pdf. Companion source code available at http://svn.carbonfive.com/public/christian/gearlist/branches/sdforum/. README file available at http://svn.carbonfive.com/public/christian/gearlist/branches/sdforum/docs/readme.txt.
- Testing the Endpoints of Your REST APIs https://www.infoq.com/presentations/rest-api-testing-postman
- Effective Test Automation Approaches for Modern CI/CD Pipelines https://www.infoq.com/articles/test-automation-ci-cd/
Internal
Fundamentals and Conventions
- Access classes are BAD. Write test classes to belong the same package as the tested classes, this way package private functionality can be tested even if the test classes are physically in a different location.
- A ...TestBase is an abstract class that has a protected abstract get...ToTest() method.
- If in developing a SomethingBase we want to test the base behavior at its own layer, then conventionally we should use a SomethingTestBase (and not a SomethingBaseTestBase).
Concepts
To Process
- Lessons Learned in Software Testing: A Context-Driven Approach https://www.amazon.com/Lessons-Learned-Software-Testing-Context-Driven/dp/0471081124
- https://medium.com/@copyconstruct/testing-microservices-the-sane-way-9bb31d158c16
- Five Factor Testing https://www.devmynd.com/blog/five-factor-testing/
- https://testing.googleblog.com/2013/07/testing-on-toilet-know-your-test-doubles.html
- Property-based Testing http://propertesting.com
- https://martinfowler.com/articles/practical-test-pyramid.html
- Contract testing: https://docs.pact.io. Also see Consumer-Driven Contract.