Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/eric-erki/awesome-software-quality

List of free software testing and verification resources
https://github.com/eric-erki/awesome-software-quality

List: awesome-software-quality

Last synced: 16 days ago
JSON representation

List of free software testing and verification resources

Awesome Lists containing this project

README

        

## List of Free Software Testing Resources

[![Build Status](https://travis-ci.org/ligurio/awesome-software-quality.svg?branch=master)](https://travis-ci.org/ligurio/awesome-software-quality)
[![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome)

**Join chat [t.me/sqaunderhood](https://t.me/sqaunderhood) and [subscribe](https://github.com/ligurio/awesome-software-quality/subscription) to receive notificatons with updates.**

### Introduction

This page collects resources for anyone considering the use of software testing and formal methods.

There are many axes along which one can organize such a list, such as the level of expertise of the intended audience (from experts to the public at large) or disciplinary orientation (computer science, mathematics, mathematical logic, etc.). Here I have chosen to classify the material by type of subject matter.

If you would like add something, just send the text as you would like it to appear to [email protected], preferrably already formatted in markdown.

## Index

* [Books](#books)
* [Courses](#courses)
* [Podcasts](#podcasts)
* [Conferences](#conferences)
* [Workshops and interactive learning tools](#workshops-and-interactive-learning-tools)
* [Learned lessons](#bugs-and-learned-lessons)
* [Awesome lists](#awesome-lists)

# Books

## In English

#### Software Testing Theory

* [Perspectives on Agile Software Testing](https://info.thoughtworks.com/ebook-agile-software-testing)
* [A Practical Guide to Testing in DevOps](https://leanpub.com/testingindevops)
* [Programs and Proofs. Mechanizing Mathematics with Dependent Types.](http://ilyasergey.net/pnp/) - Ilya Sergey @ilyasergey
* [Measure Software Quality using Application Security](https://github.com/DinisCruz/Book_Software_Quality/tree/master/content) (WIP) - Dinis Cruz
* [The "A" Word](https://leanpub.com/TheAWord) - Alan Page
* [Professional Software Development](http://mixmastamyk.bitbucket.org/pro_soft_dev/) (Chapter: "5. Software Quality") - Mike G. Miller
* [Acceptance Test Engineering Guide, Vol. I - RC1](https://testingguidance.codeplex.com/)
* [A Software Testing Primer](http://www.betoryuu.com/images/tour/items/file/testingPrimer.pdf) (PDF)
* [Classic Testing Mistakes](http://www.exampler.com/testing-com/writings/classic/mistakes.pdf) (PDF) - Brian Marick
* [Code Coverage Analysis](http://www.bullseye.com/coverage.html) - Steve Cornett
* [Practical Software Testing](http://www.softwaretestinghelp.com/practical-software-testing-new-free-ebook-download/) - STH in association with Chindam Damodar
* [A Tutorial in Exploratory Testing](http://www.kaner.com/pdfs/QAIExploring.pdf) (PDF)
* [Essential Acceptance Testing](https://leanpub.com/essential_acceptance_testing/c/HgPDBsxyYT6q)
* [Embedded Software Testing Methods](https://www.theseus.fi/bitstream/handle/10024/46873/Lepisto_Juho.pdf?sequence=1) Juho Lepistö
* [Foundations of Software Testing: Fundamental Algorithms and Techniques](http://my.safaribooksonline.com/book/software-engineering-and-development/software-testing/9788131707951) Aditya P. Mathur
* [Introduction to software testing](http://ebooks.allfree-stuff.com/eBooks_down/Software%20Testing/Introduction%20to%20Software%20Testing.pdf) (PDF)
* [Manual Testing Help](http://www.softwaretestinghelp.com/manual-testing-help-ebook-free-download/)
* [Mobile Testing: Ready Reckoner](http://enjoytesting.files.wordpress.com/2013/10/mobile_testing_ready_reckoner.pdf) (PDF) - Ajay Balamurugadas, Sundaresan Krishnaswami
* [Performance Testing Guidance](https://perftestingguide.codeplex.com/)
* [Random testing book](https://github.com/regehr/random-testing-book) DRAFT
* [Software Testing: A Comprehensive Approach](https://github.com/laboon/ebook) - Bill Laboon
* [Software Testing Tutorial](http://www.tutorialspoint.com/software_testing/index.htm)
* [Software Testing Dictionary](http://www.tutorialspoint.com/software_testing_dictionary/index.htm)
* [The Way of Testivus](http://www.agitar.com/downloads/TheWayOfTestivus.pdf)
* [The Essential Guide to Mobile App Testing](http://core.ecu.edu/STRG/materials/uTest_eBook_Mobile_Testing.pdf) (PDF)
* [UI and UX Testing: Ready Reckoner](http://enjoytesting.files.wordpress.com/2013/10/ui_and_ux_testing_ready_reckoner.pdf) (PDF) - Ajay Balamurugadas
* [What If: A collection of tips from a software tester](http://enjoytesting.files.wordpress.com/2013/10/whatif.pdf) (PDF) - Ajay Balamurugadas
* [What If: 50+ tips to win testing contests](http://enjoytesting.files.wordpress.com/2013/10/50tipstowintestingcontests.pdf) (PDF) - Ajay Balamurugadas
* [What If: 50+ tips to boost your productivity](http://enjoytesting.files.wordpress.com/2013/10/50-tips-to-boost-your-productivity.pdf) (PDF) - Ajay Balamurugadas
* [What If: 50+ tips to improve tester-programmer relationship](http://enjoytesting.files.wordpress.com/2013/10/50-tips-to-improve-tester-programmer-relationship.pdf) (PDF) - Ajay Balamurugadas
* [Handbook of Software Reliability Engineering](http://www.cse.cuhk.edu.hk/~lyu/book/reliability/)
* [Mutation Testing: Better Code by Making Bugs](https://leanpub.com/mutationtesting) - Filip van Laenen
* [The Tao of Testing. A Field Manual for Software Engineers.](https://jasonpolites.github.io/tao-of-testing/index-1.1.html) - Jason Polites
* [Observing and Reasoning About Errors](https://huddle.eurostarsoftwaretesting.com/wp-content/uploads/2017/09/Jerry-Weinberg-eBook-final-compressed-contents-page.pdf)
* [The Little Black Book On Test Design](http://thetesteye.com/papers/TheLittleBlackBookOnTestDesign.pdf) -- Rikard Endgren
* [Generating Software Tests. Breaking Software for Fun and Profit.](https://www.fuzzingbook.org/) -- by Andreas Zeller, Rahul Gopinath, Marcel Böhme, Gordon Fraser, and Christian Holler
* [Software Testing and Analysis: Process, Principles, and Techniques](http://ix.cs.uoregon.edu/~michal/book/Samples/book.pdf) -- Mauro Pezze, Michal Young ([slides](http://ix.cs.uoregon.edu/~michal/book/))
* [Software Testing Glossary](https://testitquickly.com/2016/12/14/software-testing-glossary/)
* [Quality Assistance](https://www.atlassian.com/inside-atlassian/quality-assurance-vs-quality-assistance) and [here](https://amaysim.engineering/from-quality-assurance-to-quality-assistance-32ffc990d27b) and for [youtube](https://youtu.be/9giJYYag6wQ)

#### Standards In software Testing

* [Testing Standards Working Party](http://www.testingstandards.co.uk/)
* [The International Software Testing Standard](http://softwaretestingstandard.org/)
* [Standard for Software Component Testing](http://www.testingstandards.co.uk/Component%20Testing.pdf) (PDF)
* [Everything You Need to Know About Software Test Formats](https://dou.ua/lenta/articles/software-test-formats/) (in Russian)
* [Software Testing Standards in NASA](http://www.system-safety.org/Documents/NASA-GB-8719.13.pdf)
* [ECSS-Q-ST-80C Rev.1 – Software product assurance](http://ecss.nl/standard/ecss-q-st-80c-rev-1-software-product-assurance-15-february-2017/)
* [СИСТЕМНАЯ И ПРОГРАММНАЯ ИНЖЕНЕРИЯ: ГОСТ Р 56922—2016/ISO/IEC/IEEE 29119- 3:2013](https://pdf.standartgost.ru/catalog/Data2/1/4293754/4293754866.pdf)
* DO-278
* [DO-178B](https://en.wikipedia.org/wiki/DO-178B)

#### Testing of Free and OpenSource Software

* [Quality Improvement in Volunteer Free and Open Source Software Project](http://www.cyrius.com/publications/michlmayr-phd.pdf) (PDF)

#### Testing by different programming languages

* [PHPUnit PHP Test-Driven Development - Automated Tools to Improve Your PHP Code Quality](http://refcardz.dzone.com/refcardz/phpunit-php-test-driven)
* [Practical PHP testing](http://www.giorgiosironi.com/2009/12/practical-php-testing-is-here.html)
* [Testing Erlang](https://github.com/zkessin/testing-erlang-book)
* [Testing in Scala](https://github.com/dhinojosa/testing-in-scala-book)
* [Test-Driven Development - Extensive Tutorial](https://github.com/grzesiek-galezowski/tdd-ebook) - Grzegorz Gałęzowski
* [Testing and Debugging JavaScript](https://github.com/roblevintennis/Testing-and-Debugging-JavaScript)
* [Web Application Testing in Ruby](https://leanpub.com/watirbook/read) Željko Filipin

#### Testing Tools

* [The Evolving Art of Fuzzing](http://www.vdalabs.com/tools/The_Evolving_Art_of_Fuzzing.pdf) (PDF) - Jared DeMott
* [AccelTest](http://www.lausd.net/istem/2know_files/Software_Manual.pdf) (PDF)
* [A Step-by-Step Guide to Functional Testing with TestComplete](http://www2.smartbear.com/download-mqi-inbound-testcomplete-functional-testing-top-5-ebook-blog.html)
* [HP Quality Center Tutorial](http://www.tutorialspoint.com/qc/index.htm)
* [HP QuickTest Professional Tutorial](http://www.tutorialspoint.com/qtp/index.htm)
* [.NET Performance Testing and Optimization - The Complete Guide](http://download.red-gate.com/ebooks/DotNet/Perf_Test_and_opt_eBook.zip) (zip) - RedGate, By Paul Glavich and Chris Farrell
* [Record-Playback Test Automation: Sahi & Selenium IDE](https://leanpub.com/manualToAutomatedWithSeleniumIDEAndSahi)
* [Selenium 2.0 Using the WebDriver API to Create Robust User Acceptance Tests](http://refcardz.dzone.com/refcardz/getting-started-selenium-20#refcard-download-social-buttons-display)
* [SoapUI 101: Beginner's Guide to Functional Testing](http://www2.smartbear.com/download-mqi-nbound-soapui-top-5-blast-ebook-blog.html)
* [TestNG Tutorial](http://www.tutorialspoint.com/testng/index.htm)
* [JUnit Tutorial](http://www.tutorialspoint.com/junit/index.htm)
* [PropEr Testing](http://propertesting.com/) - Fred Hebert
* [Better Unit Testing with Microsoft Fakes](https://social.technet.microsoft.com/wiki/contents/articles/11608.e-book-gallery-for-microsoft-technologies-en.aspx#Better_Unit_Testing_with_Microsoft_Fakes)
* [Testing for Continuous Delivery with Visual Studio 2012](https://social.technet.microsoft.com/wiki/contents/articles/11608.e-book-gallery-for-microsoft-technologies-en.aspx#Testing_for_Continuous_Delivery)
* [Testing mypy stubs, plugins, and types](https://sobolevn.me/2019/08/testing-mypy-types) - Nikita Sobolev

#### Formal methods

* [Learn TLA+](https://learntla.com) - Hillel Wayne @hwayne
* [Specifying Systems](http://lamport.azurewebsites.net/tla/book.html) - Leslie Lamport
* [The TLA+ Hyperbook](http://lamport.azurewebsites.net/tla/hyperbook.html) - Leslie Lamport
* [Books and papers about TLA+ and formal verification by Leslie Lamport](https://www.microsoft.com/en-us/research/people/lamport/#)
* [Alloy Documentation](http://alloy.mit.edu/alloy/documentation.html) - Daniel Jackson
* [Introduction to Spin](http://spinroot.com/spin/Man/) - Multiple Authors
* Software Foundations: [4.0](https://www.cis.upenn.edu/~bcpierce/sf/sf-4.0/), [current](https://www.cis.upenn.edu/~bcpierce/sf/current/index.html), [draft](https://softwarefoundations.cis.upenn.edu/draft/)
, [epub](https://github.com/carliros/software-foundations-book) - Benjamin C. Pierce & Co
* [Verified Functional Algorithms](http://www.cs.princeton.edu/~appel/vfa/) - Andrew W. Appel
* [Foundations of Computer Science](https://www.cl.cam.ac.uk/teaching/1998/FoundsCS/) - Dr Larry Paulson
* [Principles of Model Checking](https://pdfs.semanticscholar.org/f126/9591359fddc20f95da10c7bd4c054080b447.pdf) - Christel Baier, Joost-Pieter Katoen
* [Certified Programming with Dependent Types](http://adam.chlipala.net/cpdt/) - Adam Chlipala @achlipala
* [Formal Reasoning About Programs](http://adam.chlipala.net/frap/) - Adam Chlipala @achlipala
* [Concrete Semantics](http://concrete-semantics.org/) - Tobias Nipkow and Gerwin Klein @lsf37
* [ML for the Working Programmer, 2nd Edition](https://www.cl.cam.ac.uk/~lp15/MLbook/pub-details.html) - Lawrence C. Paulson
* [Proofs and Types](http://www.paultaylor.eu/stable/Proofs+Types.html) - Jean-Yves Girard, Yves Lafont and Paul Taylor
* [Proof assistants: History, ideas and future](http://www.ias.ac.in/article/fulltext/sadh/034/01/0003-0025) - H. Geuvers
* [Introduction to Logic](http://logic.stanford.edu/intrologic/secondary/index.html) - Michael Genesereth, Eric Kao (Stanford University)
* [An Introduction to Formal Logic](https://www.fecundity.com/codex/forallx.pdf) - P.D. Magnus (University at Albany)
* [A Problem Course in Mathematical Logic](http://euclid.trentu.ca/math/sb/pcml/pcml-16.pdf) - Stefan Bilaniuk (Trent University)
* [Language, Proof, and Logic](http://homepages.uc.edu/~martinj/Symbolic_Logic/341%20Syllabus,%20Textbook,%20Handouts,%20Notes/LPL%20textbook.pdf) - Jon Barwise, John Etchemendy
* [Mathematical Logic](http://www.mathematik.uni-muenchen.de/~schwicht/lectures/logic/ws03/ml.pdf) - Helmut Schwichtenberg
* [Mathematical Logic](http://www.personal.psu.edu/t20/notes/logic.pdf) - Stephen G. Simpson (Pennsylvania State University)
* [Formal Logic](http://maude.sip.ucm.es/~miguelpt/papers/flogic.pdf) - Miguel Palomino
* [Is Parallel Programming Hard, And, If So, What Can You Do About It?](https://github.com/paulmckrcu/perfbook/) (chapters "Validation" and "Formal verification") - Paul E. McKenney @paulmckrcu
* [More books...](http://www.freetechbooks.com/index.php/formal-methods-f28.html)
* [Formal Methods of Software Design](https://www.cs.utoronto.ca/~hehner/FMSD/)

## In Russian

#### Управление проектами

* [Черная книга менеджера](http://www.stratoplan.ru/free/mbb/) ([pdf](http://labs.stratoplan.ru/wmbook-03-01/black_book.pdf), [epub](http://labs.stratoplan.ru/wmbook-03-01/black_book.epub), [mobi](http://labs.stratoplan.ru/wmbook-03-01/black_book.mobi)) Слава Панкратов
* [Белая книжная полка менеджера](http://labs.stratoplan.ru/wmbook-03-01/) ([epub](http://labs.stratoplan.ru/wmbook-03-01/wmbook.epub), [mobi](http://labs.stratoplan.ru/wmbook-03-01/wmbook.mobi), [zip](http://labs.stratoplan.ru/wmbook-03-01/wmbook.zip))
* Как стать менеджером ([pdf](http://labs.stratoplan.ru/wmbook-03-01/it_manager.pdf), [epub](http://labs.stratoplan.ru/wmbook-03-01/it_manager.epub), [mobi](http://labs.stratoplan.ru/wmbook-03-01/it_manager.mobi)) - Слава Панкратов, Александр Орлов
* [It starts with a great product](https://www.intercom.com/books/product-management)

#### Тестирование ПО

* [Test-Driven Development in Practice](https://github.com/risik/tdd-book) - Сергей Борисов
* [Тестирование программного обеспечения. Базовый курс.](http://svyatoslav.biz/software_testing_book/) - Святослав Куликов
* [Всё, что вам нужно знать о форматах отчётов в тестировании ПО](https://gist.github.com/ligurio/6efa8576e175fa0fb5d04cfe5c85a2a5) - Сергей Бронников
* [Руководство по тестированию пользовательского опыта для сайтов, мобильных приложений и прототипов](https://uxcrowd.ru/file/guide.pdf)
* [Автоматизация тестирования от «А» до «Ы»](https://alpaev.com/testautomation/) - Gennadiy Alpaev
* [Учебник по SilkTest](https://alpaev.com/silktest/) - Gennadiy Alpaev
* [Учебник по TestComplete](https://alpaev.com/testcomplete/) - Gennadiy Alpaev

#### Формальные методы

* [Верификация программ методом Model Checking](http://intsys.msu.ru/staff/mironov/modelchk.pdf) - А.М.Миронов
* [Практикум по математической логике. Coq.](http://www.mi.ras.ru/~sk/lehre/coq/coq_pract.pdf)

# Courses

## In English

* [Software Engineering: Introduction](https://www.edx.org/course/software-engineering-introduction-ubcx-softeng1x)
* [Software Debugging](https://www.udacity.com/course/software-debugging--cs259)
* [Software Analysis & Testing](https://www.udacity.com/course/software-analysis-testing--ud333)
* [Fundamentals of TDD](https://thoughtbot.com/upcase/fundamentals-of-tdd)
* [Critical Reasoning for Beginners](http://podcasts.ox.ac.uk/series/critical-reasoning-beginners)
* [Reasoning Across the Disciplines](https://ru.coursera.org/learn/critical-reasoning)
* [Discrete Mathematics and Probability Theory](https://archive.org/details/ucberkeley-webcast-PL-XXv-cvA_iDze6fOp3qofgyjJVUioedA)
* [Mathematical Logic](https://www.youtube.com/playlist?list=PL2EB5662A0D455A81&feature=plcp)
* [Engineering Ethics](https://ocw.mit.edu/courses/engineering-systems-division/esd-932-engineering-ethics-spring-2006/audio-lectures/)
* [Engineering Ethics](https://itunes.apple.com/us/course/engineering-ethics/id1039496124?ign-mpt=uo%3D8)
* Software Development Process: [Part 1](https://www.youtube.com/playlist?list=PLAwxTw4SYaPkNAtqsKcFkUGpf4j67NBaz), [Part 2](https://www.youtube.com/playlist?list=PLAwxTw4SYaPm8PAGH7ov2Bj-nG4sXgCtJ), [Part 3](https://www.youtube.com/playlist?list=PLAwxTw4SYaPkoQFThzsc9e7Fe3QV_KJCs)
* [Test Automation Universities](https://testautomationu.applitools.com/) (free)
- [Java Web UI Path](https://testautomationu.applitools.com/learningpaths.html?id=web-ui-java-path)
- [Java API Path](https://testautomationu.applitools.com/learningpaths.html?id=api-java-path)
- [Java Mobile Path](https://testautomationu.applitools.com/learningpaths.html?id=mobile-java-path)
- [JavaScript Web UI Path](https://testautomationu.applitools.com/learningpaths.html?id=web-ui-javascript-path)
- [JavaScript API Path](https://testautomationu.applitools.com/learningpaths.html?id=api-javascript-path)
- [JavaScript Mobile Path](https://testautomationu.applitools.com/learningpaths.html?id=mobile-javascript-path)
- [Python Web UI Path](https://testautomationu.applitools.com/learningpaths.html?id=web-ui-python-path)
- [Python Mobile Path](https://testautomationu.applitools.com/learningpaths.html?id=mobile-python-path)
- [C# Web UI Path](https://testautomationu.applitools.com/learningpaths.html?id=web-ui-csharp-path)
- [Ruby Web UI Path](https://testautomationu.applitools.com/learningpaths.html?id=web-ui-ruby-path)
- [Swift Mobile Path](https://testautomationu.applitools.com/learningpaths.html?id=mobile-swift-path)
- [Codeless Path](https://testautomationu.applitools.com/learningpaths.html?id=codeless-path)

#### Software Testing

* [Black Box Software Testing course](http://www.testingeducation.org/BBST/) - Cem Kaner, J.D. Ph.D.
* [Software Testing](http://nptel.ac.in/courses/106105150/)
* [Embedded Software Testing](http://nptel.ac.in/courses/117106112/)
* [Software Testing Fundamentals](https://www.edx.org/course/software-testing-fundamentals-usmx-university-maryland-university-stv1-1x)
* [Software Testing Methods](https://www.udacity.com/course/software-testing--cs258)
* [QA Academy](https://github.com/TelerikAcademy/QA-Academy)
* [QA and Automation course](https://github.com/HackBulgaria/QA-and-Automation-101)
* [Software Testing and Verification](https://www.edx.org/micromasters/software-testing-verification)
* [Introduction to Software Testing](https://alison.com/course/introduction-to-software-testing)
* [Software Testing - Black-box Strategies and White-box Testing](https://alison.com/course/software-testing-black-box-strategies-and-white-box-testing)
* [Diploma in Software Testing](https://alison.com/course/diploma-in-software-testing)
* [Software Testing - Testing Levels and Object-Oriented Program Testing](https://alison.com/course/software-testing-testing-levels-and-object-oriented-program-testing)
* [Software Testing - Condition Coverage and Mutation Testing Strategies](https://alison.com/course/software-testing-condition-coverage-and-mutation-testing-strategies)
* [Software Testing Training](https://www.youtube.com/playlist?list=PLDC2A0C8D2EC934C7)
* [Quality Center Training](https://www.youtube.com/playlist?list=PL2CA3A709452D4E27)
* [QTP Training](https://www.youtube.com/playlist?list=PLF20D996D82993E79)
* [Selenium Tutorials](https://www.guru99.com/selenium-tutorial.html)
* [Selenium WebDriver Course](https://thefriendlytester.co.uk/selenium/course/)
* [Software Testing](https://www.youtube.com/playlist?list=PL-_cKNuVAYAWZGuyAFu8TC9I41aJ3nHIf) - Mauro Pezz

#### Fuzz testing

* [Intro: Unknown vulnerability management and discovery using fuzzing](https://vimeo.com/88662183)
* [Part 1: What are unknown vulnerabilities and why should I care](https://vimeo.com/88676857)
* [Part 2: What is fuzz testing, and where does it fit in the world of software?](https://vimeo.com/89234167)
* [Part 3: How and why fuzz testing, and managing your unknown vulnerabilities saves money](https://vimeo.com/89974203)
* [Part 4: Fuzz testing techniques: unfuzzing the fuzzing](https://vimeo.com/90074270)

#### Software Testing Management

* [Software Testing Management](https://www.edx.org/course/software-testing-management-usmx-university-maryland-university-stv1-2x)

#### User Testing

* [Introduction to User Testing](https://ru.coursera.org/learn/ui-testing/lecture/aal6p/introduction-to-user-testing)

#### Security Testing

* [Software security](https://ru.coursera.org/learn/software-security)

#### Performance Testing

* [Performance Engineering of Software Systems](https://www.youtube.com/playlist?list=PLD2AE32F507F10481&feature=plcp)
* [LoadRunner Tutorials](https://www.youtube.com/playlist?list=PLFB7DB42D42A7C31C)
* [Computer Systems Analysis](http://www.cs.wustl.edu/~jain/cse567-06/index.html)

#### Formal Software Verification

* [Formal Specification](http://www.macs.hw.ac.uk/~gabbay/F28FS/)
* [Formal Software Verification](https://www.edx.org/course/formal-software-verification-usmx-umuc-stv1-3x) and [Formal Software Verification (previous page of the course)](https://www.edx.org/course/formal-software-verification-usmx-university-maryland-university-stv1-3x)
* [Logic, Languages, Compilation, and Verification](https://www.cs.uoregon.edu/research/summerschool/summer12/curriculum.html) ([Youtube](https://www.youtube.com/user/nrolland/playlists))
* [A survey of automated theorem proving](http://compsciclub.ru/en/courses/theoremproving/2013-autumn/)
* [Tutorials and advanced lectures](http://www.cse.chalmers.se/research/group/logic/Types/tutorials.html)
* [Types Project](http://www.cse.chalmers.se/research/group/logic/Types/index.html)
* [Introduction to Formal Systems and Computation](https://itunes.apple.com/us/itunes-u/csci-e-207-introduction-to/id429428100?ign-mpt=uo%3D8)
* [CSE 814 Formal Methods in Software Engineering ](https://cse.msu.edu/~cse814/) ```Slides```
* [A survey of automated theorem proving](https://www.youtube.com/playlist?list=PL-_cKNuVAYAW9pBFvmGr37foLBDIRGxMi) - John Harrison

##### Coq

* [Coq in a Hurry](https://cel.archives-ouvertes.fr/file/index/docid/72365/filename/coq-hurry.pdf)
* [Introduction to the Coq Proof Assistant](https://video.ias.edu/univalent/appel)
* [Coq Intensive](https://www.youtube.com/playlist?list=PLovJjGVqXXf3RgVdCXH96pPwSjFLDhSri) - DeepSpec Summer School
* [Interactive Computer Theorem Proving](http://adam.chlipala.net/itp/)
* [Coq tutorials](https://www.youtube.com/playlist?list=PLDD40A96C2ED54E99)
* [Type Theory and Coq](http://www.cs.ru.nl/~freek/courses/tt-2011/)
* [Logical Verification](http://www.cs.vu.nl//~jbe248/lv2017/)
* [Modelling and verifying algorithms in Coq: an introduction](https://www.di.ens.fr/~zappa/teaching/coq/ecole10/)
* [Formal Reasoning About Programs](https://frap.csail.mit.edu/main)
* [Software foundations in Coq 0.1](https://www.youtube.com/watch?v=KKrD4JcfW90&list=PLGCr8P_YncjUT7gXUVJWSoefQ40gTOz89) - Benjamin Pierce
* [Compiler Certification](https://www.youtube.com/watch?v=-UdPqZTqExM&list=PLGCr8P_YncjUX7yHchN7KSS83KXMHmC6e) — Xavier Leroy

##### Isabelle/HOL

* [Advanced Topics in Software Verification](https://www.cse.unsw.edu.au/~cs4161/16s2/)
* [Theorem Proving - Principles, Techniques, Applications](https://www.cse.unsw.edu.au/~kleing/teaching/thprv-04/index.html)

##### Agda

* [Programming Language Foundations in Agda](https://plfa.github.io/) ```Book```

##### Model Checking

* SPIN/Promela [Model Checking Concurrent Programs](http://cnx.org/content/col10294/1.3)
* [Software Verification](https://www.youtube.com/playlist?list=PL-_cKNuVAYAUsh0QIh_zd58V4Ekmer23D) - Natasha Sharygina
* [Alloy Courses](http://alloytools.org/citations/courses.html)
* [The TLA+ Video Course](http://lamport.azurewebsites.net/video/videos.html)
* [Dr. TLA+ Series](https://github.com/tlaplus/DrTLAPlus)
* [Theorem Proving and Model Checking in PVS](https://www.cs.cmu.edu/~emc/15-820A/) - Edmund M. Clarke
* mCRL2 [System Validation: Automata and behavioural equivalences](https://www.coursera.org/learn/automata-system-validation)
* mCRL2 [System Validation (2): Model process behaviour](https://www.coursera.org/learn/system-validation-behavior)
* mCRL2 [System Validation (3): Requirements by modal formulas](https://www.coursera.org/learn/system-validation-modal-formulas)
* mCRL2 [System Validation (4): Modelling Software, Protocols, and other behaviour](https://www.coursera.org/learn/system-validation-software-protocols)

## In Russian

* [Основы программной инженерии](https://compscicenter.ru/courses/seintro/2012-spring/), [Youtube](https://www.youtube.com/playlist?list=PL-_cKNuVAYAWPPoDKwsZJcyOWmNiVPT4D) - Владимир Ицыксон
- [Основы программной инженерии (SWEBOK 2004 на русском) в EPUB и HTML](https://github.com/ligurio/swebok-ru)
* [Введение в программную инженерию](http://www.intuit.ru/studies/courses/497/353/info)
* [Введение в технологию программирования](http://www.intuit.ru/studies/courses/2262/160/info)
* [Юнит-тестирование и метрики покрытия кода тестами](https://www.lektorium.tv/lecture/13635)
* [Методы анализа и обеспечения качества ПО](http://kspt.icc.spbstu.ru/course/QA)

#### Тестирование ПО

* [Основы тестирования программного обеспечения](http://universarium.org/course/526)
* [Основы тестирования ПО](https://itvdn.com/ru/video/testing-process)
* [Основы тестирования программного обеспечения](http://www.intuit.ru/studies/courses/48/48/info)
* [Школа автоматизации процессов разработки](https://academy.yandex.ru/events/testing/spb-2014/)
* [Школа тестирования баннерной системы](https://academy.yandex.ru/events/testing/msk-2014/)
* [Software Testing](http://compsciclub.ru/courses/softwaretesting/2008-spring/)
* Software Testing 101 ([на английском](http://kspt.ftk.spbstu.ru/media/files/people/akhin/lectures/Software-Testing-101.pdf), [на русском](http://kspt.icc.spbstu.ru/media/files/people/akhin/lectures/Software-Testing-101-ru.pdf))
* [Software Testing 102](http://kspt.icc.spbstu.ru/media/files/people/akhin/lectures/Software-Testing-102v2.pdf)
* [Software Testing 103](http://kspt.icc.spbstu.ru/media/files/people/akhin/lectures/Software-Testing-102v3.pdf)
* [Тестирование ПО](http://kspt.icc.spbstu.ru/2014/course/software-testing)
* Школа тестирования: [Ручное тестирование и Автоматизация тестирования](https://academy.yandex.ru/events/testing/spb-2016/) ([Youtube](https://www.youtube.com/playlist?list=PLJMRN_6MT0JYItlUeor7YRa0r6-lI8MMR))
* [Тестирование на основе моделей](https://www.lektorium.tv/course/22774) ([слайды](http://compsciclub.ru/media/slides/modelbasedtesting_2010_spring/2010_04_25_modelbasedtesting_2010_spring_m98ClS2.pdf)), [Youtube](https://www.youtube.com/playlist?list=PL-_cKNuVAYAU1LAGzq5S0ARQjXs3TAY3K) - Кулямин Виктор
* [Серия семинаров по тестированию (автоматизация)](https://www.youtube.com/playlist?list=PL-_cKNuVAYAV4VSQQK5AWMBImQ8kf6cnr) - Сергей Андреев
* [Тестирование ПО: Базовый уровень](https://stepik.org/course/16478) - курс основан на официальной программе обучения "Сертифицированный тестировщик ПО Базового уровня" ISTQB и предназначен для подготовки к сдаче сертификационных экзаменов

#### Формальная верификация ПО

* [Верификация программ на моделях](https://www.youtube.com/user/ksavenkov/playlists)
* [Верификация параллельных и распределенных программных систем](https://www.lektorium.tv/course/22862?id=22862) ([Youtube](https://www.youtube.com/playlist?list=PL-_cKNuVAYAUw3pNeradNr8zwOXKQ1IZA) - Юрий Карпов
* [Формальные методы обеспечения качества ПО](http://kspt.icc.spbstu.ru/2010/course/quality)
* [Верификация программного обеспечения](http://www.intuit.ru/studies/courses/1040/209/info)
* [Software Verification](http://compsciclub.ru/courses/softwareverification/2008-spring/)
* [Введение в формальные методы верификации программ](http://sp.cs.msu.ru/courses/vmp/kamkin_mc2018.pdf) -- А.С. Камкин
* [Методы верификации программного обеспечения](https://www.ispras.ru/publications/2008/methods_of_software_verification/) -- В.В. Кулямин
* [Формальная спецификация и верификация программ](https://www.youtube.com/playlist?list=PLk5aZ4JAk_ZO32dammZRXxnSGhUSjOJzZ) ([практикум](http://mfsp.cmc.msu.ru/w/wp-content/uploads/2015/07/Deductive-Verification-Practicum.pdf))
* [Введение в язык формальной верификации Coq](https://compsciclub.ru/courses/intro-to-coq/2019-autumn/about/) - Антон Трунов
* [Введение в верификацию программ](https://www.youtube.com/playlist?list=PLQ-XJe6nVU5BwX1gV80aDhwW0Jt3tipIY) - Антон Трунов (спецкурс для МФТИ)

# Workshops and interactive learning tools

- Anki:
- [Software Testing](https://github.com/datateknik-lth/datateknik-lth/tree/master/ETS200-softwaretesting)
- [Foundations of Software Testing - Glossary](https://ankiweb.net/shared/info/834818027)
- [ISTQB Glossary of Terms in Software testing](https://ankiweb.net/shared/info/837841315)
- [Coding and Design](https://github.com/donnemartin/interactive-coding-challenges/tree/master/anki_cards)
- [Design Patterns](https://ankiweb.net/shared/info/701549605)
- [Object Oriented Design Patterns](https://ankiweb.net/shared/info/1202033519)
- [Regular Expressions](https://ankiweb.net/shared/info/1355137499)
- [106 Linux Commands](https://ankiweb.net/shared/info/142660396)
- [Bash Command Line For Linux](https://ankiweb.net/shared/info/1950743421)
- [LPIC 101 and 102](https://ankiweb.net/shared/info/1818363239)
- [SQL basics](https://ankiweb.net/shared/info/40406665)
- [Distributed Computing](https://ankiweb.net/shared/info/1688786699)
- [Learn how to design large-scale systems](https://github.com/donnemartin/system-design-primer)
- [Testing Mnemonics Game](http://mnemonics.brainforit.com/)
- [The Deadlock Empire: Slay dragons, learn concurrency!](https://deadlockempire.github.io)
- [Learn TLA](https://learntla.com/introduction/)
- [tla_workshop](https://github.com/parlarjb/tla_workshop)
- [test-anything](https://github.com/finnp/test-anything)
- https://math-comp.github.io/mcb/
- [LibFuzzer Wokshop](https://github.com/Dor1s/libfuzzer-workshop)
- [LibFuzzer Tutorial](https://github.com/google/fuzzer-test-suite/blob/master/tutorial/libFuzzerTutorial.md)
- [Interactive Z3 Guide](https://rise4fun.com/z3/tutorial/guide)
- [Code-defenders game (mutation testing)](http://code-defenders.org/)
- [RoboBUG: A Debugging Game](http://www.sqrlab.ca/software/robobug/)
- [Robot ON! A Program Understanding Game](http://www.sqrlab.ca/software/roboton/)
- [FireFinder](http://www.sqrlab.ca/software/firefinder/)
- [Threaded Paws: A Concurrency Game](http://www.sqrlab.ca/software/threadedpaws/)
- [Verigames](http://verigames.com/)
- [Edukera](https://www.edukera.com/)

# Conferences

* [Software Testing Conferences](http://testingconferences.org/)

# Podcasts

see [podcasts](podcasts.md)

# Bugs and Learned Lessons

* [NASA Public Lessons Learned System](https://llis.nasa.gov/)
* [Flight Software Engineering Lessons](http://aisel.aisnet.org/cgi/viewcontent.cgi?article=1671&context=amcis2009)
* [Forum on Risks to the Public in Computers and Related Systems](http://catless.ncl.ac.uk/Risks/)
* [CPU Bugs](https://wiki.osdev.org/CPU_Bugs)
* [Illustrative Risks to the Public in the Use of Computer Systems and Related Technology](http://www.csl.sri.com/users/neumann/illustrative.html)
* [Wikipedia: List of software bugs](https://en.wikipedia.org/wiki/List_of_software_bugs)
* [Postmortems](https://github.com/danluu/post-mortems)

# Awesome Lists

- [Resources for Teaching with Formal Methods](https://avigad.github.io/formal_methods_in_education/)
- Fuzzing testing by [secfigo](https://github.com/secfigo/Awesome-Fuzzing) and by [cpuu](https://github.com/cpuu/awesome-fuzzing)
- [Mutation testing](https://github.com/theofidry/mutation-testing)
- [Chaos Engineering](https://github.com/dastergon/awesome-chaos-engineering)
- [Static analysis](https://github.com/mre/awesome-static-analysis)
- [TAP (Test Anything Protocol)](https://github.com/sindresorhus/awesome-tap)
- [Awesome Testing](https://github.com/TheJambo/awesome-testing)
- [Symbolic execution](https://github.com/ksluckow/awesome-symbolic-execution)
- [History of symbolic execution](https://github.com/enzet/symbolic-execution)
- [awesome-provable](https://github.com/awesomo4000/awesome-provable)
- [Visual regression testing](https://github.com/mojoaxel/awesome-regression-testing)
- [UI Automation Tools](https://github.com/pywinauto/pywinauto/wiki/UI-Automation-tools-ratings)
- [List of verification and synthesis tools](https://github.com/johnyf/tool_lists/blob/master/verification_synthesis.md)
- [Testing of distributed systems](https://github.com/asatarin/testing-distributed-systems)
- [SecLists](https://github.com/danielmiessler/SecLists) - collection of multiple types of lists used during security assessments, collected in one place.
- [Awesome Falsehood](https://github.com/kdeldycke/awesome-falsehood)
- [Awesome Appium](https://github.com/SrinivasanTarget/awesome-appium#readme)
- [Awesome AutoIt](https://github.com/J2TEAM/awesome-AutoIt)
- [Awesome Coq](https://github.com/uhub/awesome-coq)
- [Awesome Selenium](https://github.com/christian-bromann/awesome-selenium)
- [Awesome Tsung](https://github.com/aliesbelik/awesome-tsung)
- [Awesome JMeter](https://github.com/aliesbelik/awesome-jmeter)

### License

[![CC0 Public Domain](http://i.creativecommons.org/p/zero/1.0/88x31.png)](http://creativecommons.org/publicdomain/zero/1.0/)

To the extent possible under law, [Sergey Bronnikov](https://bronevichok.ru) has
waived all copyright and related or neighboring rights to this work.