Difference between revisions of "Testing"

From BC$ MobileTV Wiki
Jump to: navigation, search
(Performance)
(Appium)
(44 intermediate revisions by the same user not shown)
Line 103: Line 103:
 
<ref>6 Small Unit Testing Tips: https://henrikwarne.com/2020/12/28/6-small-unit-testing-tips/</ref>
 
<ref>6 Small Unit Testing Tips: https://henrikwarne.com/2020/12/28/6-small-unit-testing-tips/</ref>
 
<ref>Rethinking Unit Test Assertions with "RITEway wrapper" on top of "Tape" lightweight Unit Testing library: https://medium.com/javascript-scene/rethinking-unit-test-assertions-55f59358253f | [https://github.com/ericelliott/riteway SRC]</ref>
 
<ref>Rethinking Unit Test Assertions with "RITEway wrapper" on top of "Tape" lightweight Unit Testing library: https://medium.com/javascript-scene/rethinking-unit-test-assertions-55f59358253f | [https://github.com/ericelliott/riteway SRC]</ref>
 +
<ref>How I Wish I Had Some Unit Tests! An Example: https://blog.thecodewhisperer.com/permalink/how-i-wish-i-had-some-unit-tests-an-example</ref>
  
 
==== CBUT ====
 
==== CBUT ====
Line 113: Line 114:
 
<ref>Concierge Test .vs. "Wizard of Oz" Test: https://medium.com/@Kromatic/concierge-vs-wizard-of-oz-test-b6d2f71524a</ref>
 
<ref>Concierge Test .vs. "Wizard of Oz" Test: https://medium.com/@Kromatic/concierge-vs-wizard-of-oz-test-b6d2f71524a</ref>
 
<ref>What Type of Lean Startup Experiment Should I Run?: https://grasshopperherder.com/what-type-of-lean-startup-experiment-should-i-run/ (Generative Research .vs. Evaluative Experiment)</ref>
 
<ref>What Type of Lean Startup Experiment Should I Run?: https://grasshopperherder.com/what-type-of-lean-startup-experiment-should-i-run/ (Generative Research .vs. Evaluative Experiment)</ref>
 +
<ref>Testing Storybook Components in Any Browser – Without Writing Any New Tests!: https://applitools.com/blog/storybook-components-cross-browser-testing/ (simple "Test Stack" diagram that actually includes separate "Component Testing" category)</ref>
  
 
==== Mocks ====
 
==== Mocks ====
Line 163: Line 165:
 
<ref>System INTEGRATION Testing (SIT): Complete Tutorial: https://www.guru99.com/system-integration-testing.html</ref>
 
<ref>System INTEGRATION Testing (SIT): Complete Tutorial: https://www.guru99.com/system-integration-testing.html</ref>
 
<ref>What is Integration Testing (tutorial with Integration Testing example): https://www.softwaretestinghelp.com/what-is-integration-testing/</ref>
 
<ref>What is Integration Testing (tutorial with Integration Testing example): https://www.softwaretestinghelp.com/what-is-integration-testing/</ref>
 +
<ref>'''Easy Jakarta EE Integration Testing with the Payara Platform and Testcontainers: https://blog.payara.fish/jakarta-ee-integration-testing-with-testcontainers'''</ref>
  
 
==== Smoke ====
 
==== Smoke ====
Line 184: Line 187:
 
<ref>3 ways to get test automation done within your sprints: https://techbeacon.com/app-dev-testing/3-ways-get-test-automation-done-within-your-sprints</ref>
 
<ref>3 ways to get test automation done within your sprints: https://techbeacon.com/app-dev-testing/3-ways-get-test-automation-done-within-your-sprints</ref>
 
<ref>'''Angie Jones presents -- Test Automation Beyond Java 8: https://applitools.com/blog/java-test-automation/'''</ref>
 
<ref>'''Angie Jones presents -- Test Automation Beyond Java 8: https://applitools.com/blog/java-test-automation/'''</ref>
 +
<ref>Using GitHub Copilot to Automate Tests: https://applitools.com/blog/using-github-copilot-to-automate-tests/</ref>
 +
<ref>'''Bad Spin – An Example of Ignoring the Automation Ecosystem: https://responsibleautomation.wordpress.com/2021/07/27/bad-spin-an-example-of-ignoring-the-automation-ecosystem/'''</ref>
  
 
===== Page Object Pattern =====
 
===== Page Object Pattern =====
Line 206: Line 211:
 
'''Regression Testing''' is a type of software testing that seeks to uncover new software bugs, or regressions, in existing functional and non-functional areas of a system after changes such as enhancements, patches or configuration changes, have been made to them. The intent of regression testing is to ensure that changes such as those mentioned above have not introduced new faults. One of the main reasons for regression testing is to determine whether a change in one part of the software affects other parts of the software. Common methods of regression testing include rerunning previously completed tests and checking whether program behavior has changed and whether previously fixed faults have re-emerged. Regression testing can be performed to test a system efficiently by systematically selecting the appropriate minimum set of tests needed to adequately cover a particular change.
 
'''Regression Testing''' is a type of software testing that seeks to uncover new software bugs, or regressions, in existing functional and non-functional areas of a system after changes such as enhancements, patches or configuration changes, have been made to them. The intent of regression testing is to ensure that changes such as those mentioned above have not introduced new faults. One of the main reasons for regression testing is to determine whether a change in one part of the software affects other parts of the software. Common methods of regression testing include rerunning previously completed tests and checking whether program behavior has changed and whether previously fixed faults have re-emerged. Regression testing can be performed to test a system efficiently by systematically selecting the appropriate minimum set of tests needed to adequately cover a particular change.
  
 +
* A Comprehensive Guide to Regression Testing: https://applitools.com/blog/regression-testing-guide/?
 
* [[wikipedia: Regression testing]]
 
* [[wikipedia: Regression testing]]
 +
* [[wikipedia: Traceability matrix]] (commonly referred to as "Requirements Traceability Matrix" or ''RTM'')
 
<ref>Measuring Agility and Architectural Integrity: http://walkerroyce.com/PDF/Measuring_Agility.pdf</ref>
 
<ref>Measuring Agility and Architectural Integrity: http://walkerroyce.com/PDF/Measuring_Agility.pdf</ref>
 
<ref>What is Regression Testing?: https://www.mabl.com/articles/what-is-regression-testing</ref>
 
<ref>What is Regression Testing?: https://www.mabl.com/articles/what-is-regression-testing</ref>
Line 282: Line 289:
 
<ref>Applitools Visual Test Automation of A/B Testing cases — Validating Multiple Variations: https://dzone.com/articles/ab-testing-validating-multiple-variations</ref>
 
<ref>Applitools Visual Test Automation of A/B Testing cases — Validating Multiple Variations: https://dzone.com/articles/ab-testing-validating-multiple-variations</ref>
 
<ref>10 Best A/B and Multivariate Testing Tools for Conversion Rate Optimization: https://uxplanet.org/10-best-a-b-and-multivariate-testing-tools-for-conversion-rate-optimization-d5f461f06a1d</ref>
 
<ref>10 Best A/B and Multivariate Testing Tools for Conversion Rate Optimization: https://uxplanet.org/10-best-a-b-and-multivariate-testing-tools-for-conversion-rate-optimization-d5f461f06a1d</ref>
 +
<ref>'''Selecting the best artwork for videos through A/B testing: https://netflixtechblog.com/selecting-the-best-artwork-for-videos-through-a-b-testing-f6155c4595f6'''</ref>
 +
<ref>Decision Making at Netflix: https://netflixtechblog.com/decision-making-at-netflix-33065fa06481</ref>
 +
<ref>Quasi Experimentation at Netflix: https://netflixtechblog.com/quasi-experimentation-at-netflix-566b57d2e362</ref>
 +
<ref>What is an A/B Test? (how Netflix thinks about them anyway): https://netflixtechblog.com/what-is-an-a-b-test-b08cc1b57962</ref>
 +
<ref>Interpreting A/B test results - false positives and statistical significance: https://netflixtechblog.com/interpreting-a-b-test-results-false-positives-and-statistical-significance-c1522d0db27a</ref>
 +
<ref>Experimentation is a major focus of Data Science across Netflix: https://netflixtechblog.com/experimentation-is-a-major-focus-of-data-science-across-netflix-f67923f8e985</ref>
 +
<ref>From weeks to seconds - building “mega-assets” to uncover joyful moments!: https://netflixtechblog.medium.com/from-weeks-to-seconds-building-mega-assets-to-uncover-joyful-moments-b3cedcf37ffc (testing/optimizing thumbnail variations)</ref>
  
=== Mobile ===
+
=== Mobile Testing ===
  
 
* [[wikipedia: Mobile application testing]]
 
* [[wikipedia: Mobile application testing]]
Line 292: Line 306:
 
* '''Introducing MAD LAB - for Mobile Automation: https://essenceoftesting.blogspot.ca/2017/04/introducing-mad-lab-for-mobile.html<ref>A new beginning - entertainment on mobile: https://essenceoftesting.blogspot.in/2016/12/a-new-beginning-entertainment-on-mobile.html</ref><ref>How to enable seamless running of appium tests on developer machines?: https://essenceoftesting.blogspot.in/2016/12/how-to-enable-seamless-running-of.html</ref><ref>Features of my Android Test Automation Framework: https://essenceoftesting.blogspot.in/2017/02/features-of-my-android-test-automation.html</ref><ref>How to upgrade the appium-uiautomator2-driver version for appium 1.6.3?: https://essenceoftesting.blogspot.in/2017/02/how-to-upgrade-appium-uiautomator2.html</ref><ref>Finding my way out of bottomless pit with Appium & Android 7.0 for parallel test runs: https://essenceoftesting.blogspot.in/2017/02/finding-my-way-out-of-bottomless-pit.html</ref><ref>Sharing implementation of ''cucumber-jvm'' - Appium test framework: https://essenceoftesting.blogspot.in/2017/02/sharing-implementation-of-cucumber-jvm.html</ref><ref>Features of my Android Test Automation Framework: https://essenceoftesting.blogspot.ca/2017/02/features-of-my-android-test-automation.html</ref>
 
* '''Introducing MAD LAB - for Mobile Automation: https://essenceoftesting.blogspot.ca/2017/04/introducing-mad-lab-for-mobile.html<ref>A new beginning - entertainment on mobile: https://essenceoftesting.blogspot.in/2016/12/a-new-beginning-entertainment-on-mobile.html</ref><ref>How to enable seamless running of appium tests on developer machines?: https://essenceoftesting.blogspot.in/2016/12/how-to-enable-seamless-running-of.html</ref><ref>Features of my Android Test Automation Framework: https://essenceoftesting.blogspot.in/2017/02/features-of-my-android-test-automation.html</ref><ref>How to upgrade the appium-uiautomator2-driver version for appium 1.6.3?: https://essenceoftesting.blogspot.in/2017/02/how-to-upgrade-appium-uiautomator2.html</ref><ref>Finding my way out of bottomless pit with Appium & Android 7.0 for parallel test runs: https://essenceoftesting.blogspot.in/2017/02/finding-my-way-out-of-bottomless-pit.html</ref><ref>Sharing implementation of ''cucumber-jvm'' - Appium test framework: https://essenceoftesting.blogspot.in/2017/02/sharing-implementation-of-cucumber-jvm.html</ref><ref>Features of my Android Test Automation Framework: https://essenceoftesting.blogspot.ca/2017/02/features-of-my-android-test-automation.html</ref>
 
* The iOS Testing Manifesto: https://medium.com/@hesham.salman/the-ios-testing-manifesto-e1bc821cc4c3
 
* The iOS Testing Manifesto: https://medium.com/@hesham.salman/the-ios-testing-manifesto-e1bc821cc4c3
 +
 +
==== Open Device Labs ====
 +
 +
* Open Device Labs: https://opendevicelab.com/
 +
* Where Are The World's Best Open Device Labs?: https://www.smashingmagazine.com/2016/11/worlds-best-open-device-labs/
 +
<ref>How To Establish An Open Device Lab For Better Mobile TestingL https://www.smashingmagazine.com/2012/09/establishing-an-open-device-lab/</ref>
 +
<ref>Testing Mobile -- Emulators, Simulators And Remote Debugging: https://www.smashingmagazine.com/2014/09/testing-mobile-emulators-simulators-remote-debugging/</ref>
 +
<ref>Test on Real Mobile Devices without Breaking the Bank: https://bradfrost.com/blog/post/test-on-real-mobile-devices-without-breaking-the-bank/</ref>
 +
<ref>An Experience Report Building a Mobile Automated Test Lab With SOASTA TouchTest: evolvingtowardagile.blogspot.com/2013/04/an-experience-report-building-mobile.html</ref>
 +
<ref>3 Ways to run Automated Tests on Azure DevOps: https://blog.techfabric.com/3-ways-to-run-automated-tests-on-azure-devops/</ref>
 +
* What is Azure Load Testing Preview?: https://docs.microsoft.com/en-us/azure/load-testing/overview-what-is-azure-load-testing
 +
<ref>Microsoft Introduces a Fully-Managed Azure Load Testing Service in Preview : https://www.infoq.com/news/2021/12/azure-load-testing-preview/</ref>
  
 
==== Layout ====
 
==== Layout ====
Line 304: Line 330:
 
Accessibility Testing is checking for any potential or known [[A11Y]] blockers, such as (but not limited to) those defined by [[WCAG]].
 
Accessibility Testing is checking for any potential or known [[A11Y]] blockers, such as (but not limited to) those defined by [[WCAG]].
  
 +
* See also: [[A11Y]]
 
* Accessibility Testing With Selenium Webdriver with code example: https://www.softwaretestinghelp.com/accessibility-testing-with-selenium/
 
* Accessibility Testing With Selenium Webdriver with code example: https://www.softwaretestinghelp.com/accessibility-testing-with-selenium/
 
+
<ref>Shifting Accessibility Testing to the Left: https://applitools.com/blog/shifting-accessibility-testing-to-the-left/</ref>
See also: [[A11Y]]
+
<ref>'''Mobile-Accessibility Testing Toolbox (iOS & Android): https://www.tpgi.com/on-demand-webinar-mobile-accessibility-testing-toolbox-2'''</ref>
 
+
  
 
=== Performance ===
 
=== Performance ===
Line 374: Line 400:
 
* [[wikipedia: Five Ws]] (aka. 5 questioons... ''Who'', ''What'', ''When'', ''Where'', ''Why''... bonus question for brainstorming/problem-solving is ''How'')
 
* [[wikipedia: Five Ws]] (aka. 5 questioons... ''Who'', ''What'', ''When'', ''Where'', ''Why''... bonus question for brainstorming/problem-solving is ''How'')
 
* [[wikipedia: 5 Whys]] (aka. '''Why?''' five times... each one getting closer to the root cause and sufficient information to then form solutions)
 
* [[wikipedia: 5 Whys]] (aka. '''Why?''' five times... each one getting closer to the root cause and sufficient information to then form solutions)
 +
 +
<ref>QA best practices -- How to Do Smart TV Application Testing Right: https://stage-red.exadel.com/news/qa-best-practices-how-to-do-smart-tv-application-testing-right/</ref>
  
 
=== Continuous Testing ===
 
=== Continuous Testing ===
Line 456: Line 484:
 
<ref>Hybrid Development - The Value at the Intersection of TDD, DDD & BDD: https://dzone.com/articles/hybrid-development-with-tdd-ddd-bdd</ref>
 
<ref>Hybrid Development - The Value at the Intersection of TDD, DDD & BDD: https://dzone.com/articles/hybrid-development-with-tdd-ddd-bdd</ref>
 
<ref>'''Examples to show different ways of creating Cucumber feature files (spec converted to Java): https://medium.com/@bcarunmail/examples-to-show-different-ways-of-creating-cucumber-feature-files-dbe8c04366bc'''</ref>
 
<ref>'''Examples to show different ways of creating Cucumber feature files (spec converted to Java): https://medium.com/@bcarunmail/examples-to-show-different-ways-of-creating-cucumber-feature-files-dbe8c04366bc'''</ref>
 +
<ref>Specify Business Rules by Example: https://itsadeliverything.com/specifying-business-rules-by-example</ref>
 
<ref>Modern Best Practices for Testing in Java: https://phauer.com/2019/modern-best-practices-testing-java/</ref>
 
<ref>Modern Best Practices for Testing in Java: https://phauer.com/2019/modern-best-practices-testing-java/</ref>
 +
<ref>BDD - Writing an Automated Test Suite Isn’t Rocket Science: https://betterprogramming.pub/bdd-writing-a-test-suite-before-writing-code-6279e4cf4be6</ref>
 +
<ref>What BDD Is and Why You Need It -- Java & Behavior Driven Development: https://dzone.com/articles/java-bdd-simple-and-clear-with-examples | [https://github.com/isicju/bdd_cucumber_tutorial SRC]</ref>
 +
<ref>Introducing Protocol-Oriented BDD in Swift for iOS Apps (Part 1): https://dzone.com/articles/introducing-protocol-oriented-bdd-in-swift-for-ios</ref>
  
  
===== DDT =====
+
===== Three Amigos =====
 +
 
 +
The "Three Amigos" model for building "Acceptance Criteria" that inform any Test Suites, Test Cases, Test Steps and/or Test Scenarios and clearly define the testing that QA and/or Business Acceptance Testers carry out.
 +
 
 +
[[File:Agile_3-amigos.png]]
 +
 
 +
* '''AgileAlliance -- 3 amigos: https://www.agilealliance.org/glossary/three-amigos/''' (Business owner/analyst/product-owner, Developer, Tester)
 +
* Three Amigos in the World of Agile: http://www.edgetesting.co.uk/news-events/blog/three-amigos-in-the-world-of-agile
 +
* What are the Three Amigos Development Strategy in Agile?: https://www.visual-paradigm.com/scrum/agile-three-amigos-development-strategy/
 +
<ref>Behavior Driven Development with 3 Amigo’s task: https://pritamsen.wordpress.com/2014/05/07/behavior-driven-development-with-3-amigos-task/</ref>
 +
<ref>Agile product delivery - the Three Amigos approach: https://www.lendinvest.com/blog/product-delivery-the-three-amigos-approach/</ref>
 +
<ref>The importance of three amigos in agile!: https://www.devopsonline.co.uk/the-importance-of-three-amigos-in-agile/</ref>
 +
<ref>The 3 Amigos Meeting: https://awhnet.medium.com/the-3-amigos-meeting-one-meeting-is-all-you-need-8af8b4a58ba2</ref>
 +
<ref>Three Amigos Meeting – Agree the tests before development starts: https://itsadeliverything.com/three-amigos-meeting-agree-the-tests-before-development-starts</ref>
 +
<ref>3 Amigos – Bytesize Agile (VIDEO): https://www.scrum.org/resources/blog/3-amigos-bytesize-agile</ref>
 +
 
 +
==== DDT ====
  
 
'''D'''ata-'''D'''riven '''T'''esting is the loading of initialization values and/or test case input parameters from a source external to the Test(s) such as a properties file, CSV/TSV file, XML/JSON data, or some other form of configuration.
 
'''D'''ata-'''D'''riven '''T'''esting is the loading of initialization values and/or test case input parameters from a source external to the Test(s) such as a properties file, CSV/TSV file, XML/JSON data, or some other form of configuration.
Line 488: Line 536:
  
 
* [[wikipedia: Code review]]
 
* [[wikipedia: Code review]]
 +
* [[wikipedia: Software technical review]]
 
* '''Code Review guidelines: https://docs.google.com/document/d/101FGZ0B1QqrPKl5F9x9-2vpr4xm6ku8sGqG1nALRwKA/edit'''<ref>5 Code Review Tricks the Experts Use - Based on 3.2 Million Lines of Code: http://dzone.com/articles/5-code-review-tricks-the-experts-use-based-on-32-m (based on Cisco & OverOps commissioned studies)</ref>
 
* '''Code Review guidelines: https://docs.google.com/document/d/101FGZ0B1QqrPKl5F9x9-2vpr4xm6ku8sGqG1nALRwKA/edit'''<ref>5 Code Review Tricks the Experts Use - Based on 3.2 Million Lines of Code: http://dzone.com/articles/5-code-review-tricks-the-experts-use-based-on-32-m (based on Cisco & OverOps commissioned studies)</ref>
 
* Code Review tips: https://github.com/ryanmcdermott/code-review-tips#basics
 
* Code Review tips: https://github.com/ryanmcdermott/code-review-tips#basics
Line 543: Line 592:
 
<ref>Guidelines for Java Code Reviews: https://dzone.com/articles/guidelines-for-java-code-reviews</ref>
 
<ref>Guidelines for Java Code Reviews: https://dzone.com/articles/guidelines-for-java-code-reviews</ref>
 
<ref>9 Best Practices for Effective Code Review: https://leobit.com/blog/effective-code-review-best-practices/</ref>
 
<ref>9 Best Practices for Effective Code Review: https://leobit.com/blog/effective-code-review-best-practices/</ref>
 +
<ref>Don’t do Code Review, try Mob instead: https://medium.com/verotel/dont-do-code-review-try-mob-instead-82149ef035df</ref>
  
  
Line 590: Line 640:
 
  npm-run-all test:*
 
  npm-run-all test:*
  
* [[wikipedia: List_of_tools_for_static_code_analysis#Java]]
+
 
 +
* [[wikipedia: List_of_tools_for_static_code_analysis#Java]] (SCA tools)
 +
* OWASP - Source Code Analysis (SCA) tools: https://owasp.org/www-community/Source_Code_Analysis_Tools
 
* '''EditorConfig spec: https://editorconfig.org''' | [https://github.com/editorconfig/editorconfig/wiki/EditorConfig-Properties DOCS] (helps maintain consistent coding styles for multiple developers working on the same project across various editors and IDEs)
 
* '''EditorConfig spec: https://editorconfig.org''' | [https://github.com/editorconfig/editorconfig/wiki/EditorConfig-Properties DOCS] (helps maintain consistent coding styles for multiple developers working on the same project across various editors and IDEs)
 
* PMD: https://pmd.github.io/ | [https://pmd.sourceforge.io/pmd-5.4.1/usage/running.html DOCS - CLI]<ref>'''Apache Maven plugin - PMD: https://maven.apache.org/plugins/maven-pmd-plugin/'''</ref><ref>PMD-Jenkins -- how to use it: https://stackoverflow.com/questions/17294515/pmd-jenkins-how-to-use-it</ref><ref>PMD Eclipse Tutorial: https://www.javatips.net/blog/pmd-in-eclipse-tutorial?view=all</ref><ref>'''Running all PMD rulesets from command line: https://stackoverflow.com/questions/23116108/running-all-pmd-rulesets-from-command-line'''</ref><ref>How to generate reports in PMD using:  Command Linehttps://stackoverflow.com/questions/9682149/how-to-generate-reports-in-pmd-using-command-line</ref>
 
* PMD: https://pmd.github.io/ | [https://pmd.sourceforge.io/pmd-5.4.1/usage/running.html DOCS - CLI]<ref>'''Apache Maven plugin - PMD: https://maven.apache.org/plugins/maven-pmd-plugin/'''</ref><ref>PMD-Jenkins -- how to use it: https://stackoverflow.com/questions/17294515/pmd-jenkins-how-to-use-it</ref><ref>PMD Eclipse Tutorial: https://www.javatips.net/blog/pmd-in-eclipse-tutorial?view=all</ref><ref>'''Running all PMD rulesets from command line: https://stackoverflow.com/questions/23116108/running-all-pmd-rulesets-from-command-line'''</ref><ref>How to generate reports in PMD using:  Command Linehttps://stackoverflow.com/questions/9682149/how-to-generate-reports-in-pmd-using-command-line</ref>
Line 620: Line 672:
 
<ref>Comparing 9 Code Quality tools: https://dzone.com/articles/comparing-9-code-quality-tools-of-2020</ref>
 
<ref>Comparing 9 Code Quality tools: https://dzone.com/articles/comparing-9-code-quality-tools-of-2020</ref>
 
<ref>Semgrep -- lightweight, ultra-fast, OSS static analysis tool to find bugs & enforce code standards: https://semgrep.dev | [https://semgrep.dev/docs/ DOCS] | [https://semgrep.dev/docs/integrations/#standalone-providers INTEGRATIONS]</ref>
 
<ref>Semgrep -- lightweight, ultra-fast, OSS static analysis tool to find bugs & enforce code standards: https://semgrep.dev | [https://semgrep.dev/docs/ DOCS] | [https://semgrep.dev/docs/integrations/#standalone-providers INTEGRATIONS]</ref>
 +
<ref>The Forrester Wave™: Software Composition Analysis, Q3 2021: https://reprints2.forrester.com/#/assets/2/425/RES176091/report</ref>
 +
<ref>[[wikipedia: Semgrep]]</ref>
 +
<ref>SemGrep: https://semgrep.dev | [https://github.com/returntocorp/semgrep SRC]</ref>
  
 
==== Refactoring ====
 
==== Refactoring ====
Line 643: Line 698:
 
<ref>Why “I Do High Quality Work” Is Both Good Policy and Terrible Positioning: https://daedtech.com/why-i-do-high-quality-work-is-both-good-policy-and-terrible-positioning/</ref>
 
<ref>Why “I Do High Quality Work” Is Both Good Policy and Terrible Positioning: https://daedtech.com/why-i-do-high-quality-work-is-both-good-policy-and-terrible-positioning/</ref>
 
<ref>Satisfiying vs Maximizing: https://blog.asmartbear.com/maximizing.html</ref>
 
<ref>Satisfiying vs Maximizing: https://blog.asmartbear.com/maximizing.html</ref>
 +
 +
===== Legacy Code =====
 +
 +
'''Legacy Systems''' are methods/approaches, technologies, computer hardwares, software systems, watch/mobile/tablet/desktop/TV Application programs, Application Programming Interfaces (APIs) and/or Software Development Kits (SDKs) "of, relating to, or being a previous or outdated computer system" yet still in use by and/or depended upon by a company or particular group of users.
 +
 +
'''Legacy Code''' is any computer source code deemed old, antiquated, inefficient, excessively complex, confusing, hard-to-read, buggy/error-prone, obsolete itself or supporting something obsolete, using deprecated or decommissioned APIs/SDKs, or, simply an organization's existing codebase that was written over many years and which has not sufficiently evolved to reflect modern best practices. Often referencing a system as "legacy" implies that the system is out of date and/or in need of replacement, however, it could also be used in a respectful manner to indicate that it was an instrumental technology that paved the way for further standards or systems that are to follow it.
 +
 +
Long-lived code is susceptible to "software rot"<ref>[[wikipedia: Software rot]]</ref>, where changes to the runtime environment, or surrounding hardware/software may require maintenance or emulation of some kind to keep it working. Legacy code may be present to support legacy hardware, a separate legacy system, or a legacy customer using an old feature or software version.
 +
 +
While the term usually refers to source code, it can also apply to executable code that no longer runs on a later version of a system, or requires a compatibility layer to do so.
 +
 +
* [[wikipedia: Legacy system]]
 +
* See also: [[Technical Debt]]
 +
<ref>Brand new legacy code is developed every day: https://www.markkukero.com/2018-05-brand-new-legacy-code-is-developed-every-day/</ref>
 +
<ref>"Legacy Code is Fear" (PRESENTATION) ''@Swanseacon'' 2015-09-08: https://www.slideshare.net/adibolb/legacy-code-is-fear-swanseacon-08-09-2015</ref>
  
  
Line 732: Line 802:
 
<ref>Appium setting up with Jenkins CI Guidelines: https://discuss.appium.io/t/appium-setting-up-with-jenkins-ci-guidelines/9877</ref>
 
<ref>Appium setting up with Jenkins CI Guidelines: https://discuss.appium.io/t/appium-setting-up-with-jenkins-ci-guidelines/9877</ref>
 
* BEYOND APPIUM -- Implementing Comprehensive Testing Using Espresso And XCUITest: https://assets.ctfassets.net/czwjnyf8a9ri/7ca7kp43RFG3RavLKySYvf/29346b3f1061a08dca1146f7d7da97dc/beyond-appium-testing-using-expresso-xcuitest.pdf
 
* BEYOND APPIUM -- Implementing Comprehensive Testing Using Espresso And XCUITest: https://assets.ctfassets.net/czwjnyf8a9ri/7ca7kp43RFG3RavLKySYvf/29346b3f1061a08dca1146f7d7da97dc/beyond-appium-testing-using-expresso-xcuitest.pdf
* '''Google -- Android samples: https://developer.android.com/samples/'''
+
<ref>Hello Appium, Part 2 - Writing Your First Android Test: https://applitools.com/blog/how-to-write-android-test-appium/ | [https://github.com/automationhacks/appium-fast-boilerplate SRC]</ref>
<ref>A New Reference App for Multi-device Applications: https://android-developers.googleblog.com/2015/03/a-new-reference-app-for-multi-device.html | [https://github.com/android/uamp SRC]</ref>
+
<ref>New Android Code Samples: https://android-developers.googleblog.com/2015/04/new-android-code-samples.html | [https://github.com/android/wear-os-samples SRC]</ref>
+
<ref>Android CardView Sample Project (with RecyclerView): http://www.oded-tech-blog.com/android-cardview-sample-project-recyclerview/ | [https://github.com/oded-regev/CardViewSampleApp SRC]</ref>
+
<ref>Getting Started With RecyclerView and CardView on Android: https://code.tutsplus.com/tutorials/getting-started-with-recyclerview-and-cardview-on-android--cms-23465</ref>
+
  
 
* Understanding Desired Capabilities: https://nishantverma.gitbooks.io/appium-for-android/understanding_desired_capabilities.html
 
* Understanding Desired Capabilities: https://nishantverma.gitbooks.io/appium-for-android/understanding_desired_capabilities.html
Line 777: Line 843:
 
<ref>iOS Testing Using Appium and JAVA | iOS Mobile Test Automation: https://www.swtestacademy.com/ios-testing-appium-java/</ref>
 
<ref>iOS Testing Using Appium and JAVA | iOS Mobile Test Automation: https://www.swtestacademy.com/ios-testing-appium-java/</ref>
 
<ref>How to Test Toast Messages using Appium?: http://www.qaautomated.com/2017/12/how-to-test-toast-messages-using-appium.html</ref>
 
<ref>How to Test Toast Messages using Appium?: http://www.qaautomated.com/2017/12/how-to-test-toast-messages-using-appium.html</ref>
 +
<ref>UI Test Automation - Speed Up Mobile App UI Testing with Appium: https://www.appcoda.com/automated-ui-testing-appium/</ref>
 +
<ref>How to Automate Gesture Testing with Appium: https://applitools.com/blog/how-to-automate-gesture-testing-appium/</ref>
 +
<ref>How to build your own "Appium plugin": https://applitools.com/blog/how-to-build-your-own-appium-plugin/</ref>
 +
<ref>Hello Appium! Part 3 - Writing Your First iOS Test: https://applitools.com/blog/how-to-write-appium-ios-test/</ref>
  
 
==== Cypress ====
 
==== Cypress ====
Line 849: Line 919:
 
<ref>'''Update Content-Type in Attachment before submissionSolved: https://community.smartbear.com/t5/SoapUI-Pro/Update-Content-Type-in-Attachment-before-submission/td-p/41128'''</ref>
 
<ref>'''Update Content-Type in Attachment before submissionSolved: https://community.smartbear.com/t5/SoapUI-Pro/Update-Content-Type-in-Attachment-before-submission/td-p/41128'''</ref>
 
<ref>How add groovy script in Soap UI to automatically update definitions?: https://stackoverflow.com/questions/23777952/how-add-groovy-script-in-soap-ui-to-automatically-update-definitions</ref>
 
<ref>How add groovy script in Soap UI to automatically update definitions?: https://stackoverflow.com/questions/23777952/how-add-groovy-script-in-soap-ui-to-automatically-update-definitions</ref>
 +
<ref>SoapUI -- Export (an imported API definintion) in the OpenAPI or Swagger format: https://support.smartbear.com/readyapi/docs/apis/export.html#export-in-the-openapi-or-swagger-format</ref>
  
 
==== Service Virtualization ====
 
==== Service Virtualization ====
Line 892: Line 963:
 
* Selenium - Keyboard mappings: https://github.com/SeleniumHQ/selenium/blob/master/java/client/src/org/openqa/selenium/Keys.java
 
* Selenium - Keyboard mappings: https://github.com/SeleniumHQ/selenium/blob/master/java/client/src/org/openqa/selenium/Keys.java
 
* '''Selenium Guide Book: https://seleniumguidebook.com''' (leading E-BOOK on using Selenium WebDriver in the primary programming languages)<ref>What is the best book to learn Selenium?: https://www.quora.com/What-is-the-best-book-to-learn-Selenium</ref><ref>in28minutes -- Learn Automation Testing with Java and Selenium (E-LEARNING COURSE): https://www.udemy.com/automation-testing-with-selenium-and-java-for-beginners/learn/v4/t/lecture/10089460?start=0 | [https://github.com/in28minutes/automation-testing-with-java-and-selenium SRC]</ref>
 
* '''Selenium Guide Book: https://seleniumguidebook.com''' (leading E-BOOK on using Selenium WebDriver in the primary programming languages)<ref>What is the best book to learn Selenium?: https://www.quora.com/What-is-the-best-book-to-learn-Selenium</ref><ref>in28minutes -- Learn Automation Testing with Java and Selenium (E-LEARNING COURSE): https://www.udemy.com/automation-testing-with-selenium-and-java-for-beginners/learn/v4/t/lecture/10089460?start=0 | [https://github.com/in28minutes/automation-testing-with-java-and-selenium SRC]</ref>
 +
* Hands-On Selenium WebDriver with Java (BOOK): https://www.oreilly.com/library/view/hands-on-selenium-webdriver/9781098109998/
 
<ref>Running Automated Selenium Tests from Jenkins on Linux: https://stgconsulting.com/running-automated-selenium-tests-from-jenkins-on-linux/</ref>
 
<ref>Running Automated Selenium Tests from Jenkins on Linux: https://stgconsulting.com/running-automated-selenium-tests-from-jenkins-on-linux/</ref>
 
<ref>Tutorial -- How to use Headless Firefox for Scraping in Linux: http://scraping.pro/use-headless-firefox-scraping-linux/</ref>
 
<ref>Tutorial -- How to use Headless Firefox for Scraping in Linux: http://scraping.pro/use-headless-firefox-scraping-linux/</ref>
Line 898: Line 970:
 
<ref>Selenium2 MindMap of concepts: https://www.mindmeister.com/334652100/selenium-2-commands?fullscreen=1</ref>
 
<ref>Selenium2 MindMap of concepts: https://www.mindmeister.com/334652100/selenium-2-commands?fullscreen=1</ref>
  
* '''flash-selenium: https://code.google.com/archive/p/flash-selenium/''' | [https://code.google.com/archive/p/flash-selenium/downloads DOWNLOAD]<ref>flash-selenium example: http://www.developerfusion.com/project/18930/flashselenium/ (APPLICATION LINK DEAD: an old color chooser example using "colors.html" & "colors.swf" files)</ref><ref>More recent example of testing the Flash ColorChooser in Selenium: https://qaguru.wordpress.com/2011/05/24/selenium-and-flash-testing-flash-application-using-selenium/</ref><ref>Testing Flash with Selenium (Flash – JavaScript communication): http://toolsqa.com/selenium-webdriver/testing-flash-selenium-flash-javascript-communication/ (selenium sample in C#)</ref><ref>'''Writing and running functional tests for Flash with Selenium RC: https://www.adobe.com/devnet/flash/articles/flash_selenium.html'''</ref><ref>Writing and running functional tests for Flash with Selenium RC: https://qaguru.wordpress.com/2011/05/24/selenium-and-flash-testing-flash-application-using-selenium/</ref>
 
<ref>'''Enable Flash player on Chrome 62 while running selenium test: https://sqa.stackexchange.com/questions/30312/enable-flash-player-on-chrome-62-while-running-selenium-test''' (apart from setting Capabilities via WebDriver API, requires running Chrome with "--allow-outdated-plugins" flag as of Chrome 62+)</ref>
 
 
* NodeJS Selenium: https://www.npmjs.com/package/selenium-standalone | [https://www.npmjs.com/package/selenium-webdriver WEB DRIVER]
 
* NodeJS Selenium: https://www.npmjs.com/package/selenium-standalone | [https://www.npmjs.com/package/selenium-webdriver WEB DRIVER]
* flex-ui-selenium -- Selenium RC driving the tests against Flex applications: http://code.google.com/p/flex-ui-selenium/
+
* flash-selenium: https://code.google.com/archive/p/flash-selenium/ | [https://code.google.com/archive/p/flash-selenium/downloads DOWNLOAD]<ref>flash-selenium example: http://www.developerfusion.com/project/18930/flashselenium/ (APPLICATION LINK DEAD: an old color chooser example using "colors.html" & "colors.swf" files)</ref><ref>More recent example of testing the Flash ColorChooser in Selenium: https://qaguru.wordpress.com/2011/05/24/selenium-and-flash-testing-flash-application-using-selenium/</ref><ref>Testing Flash with Selenium (Flash – JavaScript communication): http://toolsqa.com/selenium-webdriver/testing-flash-selenium-flash-javascript-communication/ (selenium sample in C#)</ref><ref>'''Writing and running functional tests for Flash with Selenium RC: https://www.adobe.com/devnet/flash/articles/flash_selenium.html'''</ref><ref>Writing and running functional tests for Flash with Selenium RC: https://qaguru.wordpress.com/2011/05/24/selenium-and-flash-testing-flash-application-using-selenium/</ref><ref>'''Enable Flash player on Chrome 62 while running selenium test: https://sqa.stackexchange.com/questions/30312/enable-flash-player-on-chrome-62-while-running-selenium-test''' (apart from setting Capabilities via WebDriver API, requires running Chrome with "--allow-outdated-plugins" flag as of Chrome 62+)</ref>
* Selenium-Flex API - Automation for Adobe Flex applications: http://code.google.com/p/sfapi/
+
* flex-ui-selenium -- Selenium RC driving the tests against Flex applications: http://code.google.com/p/flex-ui-selenium/<ref>Selenium-Flex API - Automation for Adobe Flex applications: http://code.google.com/p/sfapi/</ref><ref>Flex acceptance testing and continuous integration: http://www.blackpepper.co.uk/black-pepper-blog/Flex-acceptance-testing-and-continuous-integration.html</ref>
* Flex acceptance testing and continuous integration: http://www.blackpepper.co.uk/black-pepper-blog/Flex-acceptance-testing-and-continuous-integration.html
+
 
* Selenium in Python (WebDriver): https://pypi.python.org/pypi/selenium | [https://selenium-python.readthedocs.io DOCS]<ref>Introduction To Creating Automated Tests by Using Selenium IDE and Python: https://desmart.com/blog/introduction-to-creating-automated-tests-by-using-selenium-ide-and-python</ref><ref>How to use Selenium with Python: https://stackoverflow.com/questions/17540971/how-to-use-selenium-with-python</ref><ref>How to Use Selenium with Python -- Complete Tutorial : https://www.guru99.com/selenium-python.html</ref><ref>Running Selenium tests under ''py.test'' convention with docker support: https://github.com/eliranshani/selenium-docker-allure</ref>
 
* Selenium in Python (WebDriver): https://pypi.python.org/pypi/selenium | [https://selenium-python.readthedocs.io DOCS]<ref>Introduction To Creating Automated Tests by Using Selenium IDE and Python: https://desmart.com/blog/introduction-to-creating-automated-tests-by-using-selenium-ide-and-python</ref><ref>How to use Selenium with Python: https://stackoverflow.com/questions/17540971/how-to-use-selenium-with-python</ref><ref>How to Use Selenium with Python -- Complete Tutorial : https://www.guru99.com/selenium-python.html</ref><ref>Running Selenium tests under ''py.test'' convention with docker support: https://github.com/eliranshani/selenium-docker-allure</ref>
 
* Testing with PHPUnit and Selenium: http://netbeans.org/kb/docs/php/phpunit.html
 
* Testing with PHPUnit and Selenium: http://netbeans.org/kb/docs/php/phpunit.html
Line 925: Line 994:
 
WebDriver Manager – EXAMPLES: https://github.com/bonigarcia/webdrivermanager-examples | [https://github.com/bonigarcia/webdrivermanager-examples/blob/master/src/test/java/io/github/bonigarcia/wdm/test/ChromeHeadlessTest.java EX#1-ChromeHeadless] | [https://github.com/bonigarcia/webdrivermanager-examples/blob/master/src/test/java/io/github/bonigarcia/wdm/test/AppiumTest.java EX#2-AppiumAndroidSeleniumGrid] | [https://github.com/bonigarcia/webdrivermanager-examples/blob/master/src/test/java/io/github/bonigarcia/wdm/test/ChromeAndFirefoxTest.java EX#3-FirefoxChrome] | [https://github.com/bonigarcia/webdrivermanager-examples/blob/master/src/test/java/io/github/bonigarcia/wdm/test/ImplicitWaitTest.java EX#4-MultiBrowser] | [https://github.com/bonigarcia/webdrivermanager-examples/blob/master/src/test/java/io/github/bonigarcia/wdm/test/PerformanceChromeTest.java EX#5-Performance]
 
WebDriver Manager – EXAMPLES: https://github.com/bonigarcia/webdrivermanager-examples | [https://github.com/bonigarcia/webdrivermanager-examples/blob/master/src/test/java/io/github/bonigarcia/wdm/test/ChromeHeadlessTest.java EX#1-ChromeHeadless] | [https://github.com/bonigarcia/webdrivermanager-examples/blob/master/src/test/java/io/github/bonigarcia/wdm/test/AppiumTest.java EX#2-AppiumAndroidSeleniumGrid] | [https://github.com/bonigarcia/webdrivermanager-examples/blob/master/src/test/java/io/github/bonigarcia/wdm/test/ChromeAndFirefoxTest.java EX#3-FirefoxChrome] | [https://github.com/bonigarcia/webdrivermanager-examples/blob/master/src/test/java/io/github/bonigarcia/wdm/test/ImplicitWaitTest.java EX#4-MultiBrowser] | [https://github.com/bonigarcia/webdrivermanager-examples/blob/master/src/test/java/io/github/bonigarcia/wdm/test/PerformanceChromeTest.java EX#5-Performance]
 
* What’s New In Selenium 4?: https://applitools.com/blog/selenium-4/
 
* What’s New In Selenium 4?: https://applitools.com/blog/selenium-4/
 +
<ref>Selenium 4 Release Candidate is here!: https://applitools.com/blog/selenium-4-release-candidate/</ref>
 +
<ref>How To Upgrade to Selenium 4: https://saucelabs.com/resources/articles/how-to-upgrade-to-selenium-4</ref>
 
* Java 11+, JUnit 5 & Selenium 4: https://www.lambdatest.com/blog/execute-junit4-tests-with-junit5/
 
* Java 11+, JUnit 5 & Selenium 4: https://www.lambdatest.com/blog/execute-junit4-tests-with-junit5/
 
<ref>JUnit 5 Jupiter API: https://developer.ibm.com/languages/java/tutorials/j-introducing-junit5-part1-jupiter-api/</ref>
 
<ref>JUnit 5 Jupiter API: https://developer.ibm.com/languages/java/tutorials/j-introducing-junit5-part1-jupiter-api/</ref>
Line 1,013: Line 1,084:
 
<ref>WebDriver – How to Restore Cookies in New Browser Window: https://www.testingexcellence.com/webdriver-how-to-restore-cookies-in-new-browser-window/</ref>
 
<ref>WebDriver – How to Restore Cookies in New Browser Window: https://www.testingexcellence.com/webdriver-how-to-restore-cookies-in-new-browser-window/</ref>
 
<ref>Cookie Handling in Selenium WebDriver: https://www.guru99.com/handling-cookies-selenium-webdriver.html</ref>
 
<ref>Cookie Handling in Selenium WebDriver: https://www.guru99.com/handling-cookies-selenium-webdriver.html</ref>
 +
<ref>Managing Cookies with Selenium for Java: https://applitools.com/event/cookies-selenium-java/</ref>
 
<ref>How do I load session and cookies from Selenium browser to requests library in Python?: https://stackoverflow.com/questions/29563335/how-do-i-load-session-and-cookies-from-selenium-browser-to-requests-library-in-p</ref>
 
<ref>How do I load session and cookies from Selenium browser to requests library in Python?: https://stackoverflow.com/questions/29563335/how-do-i-load-session-and-cookies-from-selenium-browser-to-requests-library-in-p</ref>
 
<ref>'''SafariDriver (SAFARI EXTENSION): http://selenium-release.storage.googleapis.com/index.html?path=2.48/'''</ref>
 
<ref>'''SafariDriver (SAFARI EXTENSION): http://selenium-release.storage.googleapis.com/index.html?path=2.48/'''</ref>
Line 1,032: Line 1,104:
 
<ref>How to Scroll into view in Selenium Webdriver: https://learn-automation.com/how-to-scroll-into-view-in-selenium-webdriver/</ref>
 
<ref>How to Scroll into view in Selenium Webdriver: https://learn-automation.com/how-to-scroll-into-view-in-selenium-webdriver/</ref>
 
<ref>Webdriver Firefox “Element could not be scrolled into view”: https://sqa.stackexchange.com/questions/32697/webdriver-firefox-element-could-not-be-scrolled-into-view</ref>
 
<ref>Webdriver Firefox “Element could not be scrolled into view”: https://sqa.stackexchange.com/questions/32697/webdriver-firefox-element-could-not-be-scrolled-into-view</ref>
 
+
<ref>How to crawl websites with Selenide and JDK 14+: https://blog.sebastian-daschner.com/entries/crawling-websites-selenide-jdk14 | [https://github.com/sdaschner/selenium-playground/ SRC]</ref>
  
  
Line 1,086: Line 1,158:
 
* '''Selenium IDE: http://docs.seleniumhq.org/projects/ide/''' | [https://github.com/seleniumhq/selenium-ide PROJECT] | [https://www.seleniumhq.org/selenium-ide/docs/en/api/commands/ DOCS] | [https://www.npmjs.com/package/selenium-side-runner SIDE Runner] | [https://output.jsbin.com/zagemaw SeleniumIDE 4.x-2.x converter] (this project replaces the XUL plugin with a Web Extensions API based alternative which runs cross-browser on FF 55+/Chrome/Opera, maybe Edge later... as the original XUL-based SeleniumIDE used for the past 12 years from FF 3, stopped working in FF 55+)
 
* '''Selenium IDE: http://docs.seleniumhq.org/projects/ide/''' | [https://github.com/seleniumhq/selenium-ide PROJECT] | [https://www.seleniumhq.org/selenium-ide/docs/en/api/commands/ DOCS] | [https://www.npmjs.com/package/selenium-side-runner SIDE Runner] | [https://output.jsbin.com/zagemaw SeleniumIDE 4.x-2.x converter] (this project replaces the XUL plugin with a Web Extensions API based alternative which runs cross-browser on FF 55+/Chrome/Opera, maybe Edge later... as the original XUL-based SeleniumIDE used for the past 12 years from FF 3, stopped working in FF 55+)
 
<ref>'''Getting Started with SeleniumIDE Plugins: https://github.com/SeleniumHQ/selenium-ide/wiki/Getting-Started-with-Plugins'''</ref><ref>Selenium IDE v3.0 quick start guide: https://devopsqa.wordpress.com/2018/04/17/selenium-ide/</ref>
 
<ref>'''Getting Started with SeleniumIDE Plugins: https://github.com/SeleniumHQ/selenium-ide/wiki/Getting-Started-with-Plugins'''</ref><ref>Selenium IDE v3.0 quick start guide: https://devopsqa.wordpress.com/2018/04/17/selenium-ide/</ref>
<ref>Selenium SIDE Runner: https://github.com/SeleniumHQ/selenium-ide/blob/extensibility/packages/selenium-side-runner/README.md</ref><ref>SeleniumIDE + Applitools integration ("visual testing" add-on):https://applitools.com/selenium-ide</ref>
+
<ref>Selenium SIDE Runner: https://github.com/SeleniumHQ/selenium-ide/blob/extensibility/packages/selenium-side-runner/README.md</ref><ref>'''SeleniumIDE + Applitools integration ("visual testing" add-on):https://applitools.com/selenium-ide | [https://applitools.com/tutorials/selenium-ide.html#selenium-ide-videos VIDEOS] | [https://applitools.com/blog/selenium/ DOCS]'''</ref>
 
<ref>'''Applitools for Selenium IDE Tutorial: https://applitools.com/tutorials/selenium-ide.html#selenium-ide-videos'''</ref>
 
<ref>'''Applitools for Selenium IDE Tutorial: https://applitools.com/tutorials/selenium-ide.html#selenium-ide-videos'''</ref>
 
<ref>Firefox 55 & Selenium IDE: https://seleniumhq.wordpress.com/2017/08/09/firefox-55-and-selenium-ide/ (officially the end of the line for legacy FF XUL/XPI SeleniumIDE, an effort is now underway to replace it with a [https://browserext.github.io/browserext/ WebExtensions API] version that should work in FF/Chrome/Opera)</ref>
 
<ref>Firefox 55 & Selenium IDE: https://seleniumhq.wordpress.com/2017/08/09/firefox-55-and-selenium-ide/ (officially the end of the line for legacy FF XUL/XPI SeleniumIDE, an effort is now underway to replace it with a [https://browserext.github.io/browserext/ WebExtensions API] version that should work in FF/Chrome/Opera)</ref>
Line 1,515: Line 1,587:
 
<ref>Automatically stop a JMeter load test after too many errors: https://www.redline13.com/blog/2021/03/stop-a-jmeter-load-test/</ref>
 
<ref>Automatically stop a JMeter load test after too many errors: https://www.redline13.com/blog/2021/03/stop-a-jmeter-load-test/</ref>
 
<ref>JMeter - Example of Synchronizing Timer (sample usage): http://www.2min2code.com/articles/jmeter_intro/sync_timer</ref>
 
<ref>JMeter - Example of Synchronizing Timer (sample usage): http://www.2min2code.com/articles/jmeter_intro/sync_timer</ref>
 +
<ref>Most Popular Load Test Types Over The Years – JMeter Keeps Growing: https://www.redline13.com/blog/2021/08/popular-load-test-types/</ref>
  
 
=== Penetration ===
 
=== Penetration ===
Line 1,647: Line 1,720:
 
* [[wikipedia: Statistical process control]] (commonly abbreviated as ''SPC'')
 
* [[wikipedia: Statistical process control]] (commonly abbreviated as ''SPC'')
 
* Perspectives on the SPEC SDET Benchmark: http://www.spec.org/sdm91/sdet/SDETPerspectives.html<ref>What Is Difference Between SDET And TESTER?: https://www.softwaretestingclass.com/what-is-difference-between-sdet-and-tester/ (''SDET'' = Software Development Engineer in Test)</ref>
 
* Perspectives on the SPEC SDET Benchmark: http://www.spec.org/sdm91/sdet/SDETPerspectives.html<ref>What Is Difference Between SDET And TESTER?: https://www.softwaretestingclass.com/what-is-difference-between-sdet-and-tester/ (''SDET'' = Software Development Engineer in Test)</ref>
 +
* Test Case vs. Test Scenario: https://dzone.com/articles/test-case-vs-test-scenario
 
* How to do NFR Testing ("Non Functional Requirements" Testing): https://capgemini.github.io/testing/how-to-do-nft/
 
* How to do NFR Testing ("Non Functional Requirements" Testing): https://capgemini.github.io/testing/how-to-do-nft/
 
* '''Software Quality at Top Speed: http://www.stevemcconnell.com/articles/art04.htm'''
 
* '''Software Quality at Top Speed: http://www.stevemcconnell.com/articles/art04.htm'''
Line 1,725: Line 1,799:
 
* How one bad algorithm cost traders $440m (and bankrupted Knight Capital) - a look at the worst software testing day ever: https://www.theregister.com/2012/08/03/bad_algorithm_lost_440_million_dollars/
 
* How one bad algorithm cost traders $440m (and bankrupted Knight Capital) - a look at the worst software testing day ever: https://www.theregister.com/2012/08/03/bad_algorithm_lost_440_million_dollars/
 
* On the Diverse And Fantastical Shapes of Testing: https://martinfowler.com/articles/2021-test-shapes.html
 
* On the Diverse And Fantastical Shapes of Testing: https://martinfowler.com/articles/2021-test-shapes.html
 +
* Tricentis Acquires AI-based SaaS Test Automation Platform Testim: https://www.tricentis.com/news/tricentis-acquires-ai-based-saas-test-automation-platform-testim/
 +
* A New Day for Testim and Tricentis—and for developers and agile teams: https://www.testim.io/blog/testim-and-tricentis-announcement/*
 +
* 7 Approaches To Testing: https://dzone.com/articles/7-approaches-to-testing
 +
* What Is Sanity Testing? - A Brief Guide: https://dzone.com/articles/what-is-sanity-testing-a-brief-guide?edition=719434
 +
* Sanity vs Smoke Testing: What’s the Difference: https://dzone.com/articles/sanity-vs-smoke-testing-whats-the-difference
  
  

Revision as of 20:51, 2 May 2022

Contents

Testing is extremely important for evaluating the overall health, durability, safety, security and adherence to standards of a piece of software or system.




Criteria

7 Testing Criteria:

  1. Beta Testing (does it work?)
  2. Usability Testing (is it simple/usable?)
  3. Content Review (who can use it? practicality of material...)
  4. Learning Outcomes (how does it get used/absorbed?)
  5. Integration into Daily Life (when/where does it fit in existing systems/usages? i.e. training/course curriculums)
  6. Impact on Daily Life (what effect does it have? i.e. medical clinic practice, scheduling appointments, send msgs)
  7. Validity Testing (why do this task or add this feature? are the results relevant/valid...)

Test Strategies

Phased

The "traditional" approach to Testing is that it proceeds after (and in Waterfall strictly only after) all software, applications, supporting systems, etc have been delivered and fully integrated. At the end of the project, the time between "software works" and "software delivered to customer" is often dubbed the "Testing Phase". While this ensures that only "one major pass" of testing theoretically needs to get done, with much lower needs for frequent minor regression tests, it is often too naive to satisfy real-world (constantly changing) business needs.

Often in Agile Development environment, the Phased approach must be at the very least modified to have several "medium sized" iterative phases. Other strategies are to give up on a Phased Testing approach entirely and begin Continuous Testing.


Continuous Testing

Continuous Testing is the alignment of Development and Testing efforts in a recurring, iterative feedback cycle that should last the lifetime of the product/service being continuously tested.

[2] [3] [4] [5] [6] [7] [8]


Shift Left

Shift-Left Testing is the act of moving testing earlier into the delivery cycle, for instance, involving Testers in not just the traditional SDLC testing approach upon delivery of a batch of features, but even earlier at the very least during the Implementation phase (developing test scripts, unit tests, etc together with Development team building features and testing each feature as soon as it becomes available) but even all the way left to the Design phase (writing Test Plans and test case creation to help inform implementation approach) and ideally even further left to the Ideation (identifying any features which don't meet the Test Strategy or would be prohibitively difficult to test for any reason so these can be known as early on as possible) or at very least Requirements phase (through adding clear Acceptance Criteria on each Story that inform Definition of Done and possibly streamline any Test Cases required).

[9]

Shift Right

Shift-Right Testing is about getting our testing heading in the exact opposite direction of Shift-Left Testing, in that it is most often needed by organizations whom have an aversion against "testing in Production", whether legitimate or imagined. This form of testing insists that we should test equally if not more so in Production than we do in Non-Production, because of a number of known limitations to testing only in Non-Production; for instance, It is a known fact that Non-Production (where QA teams traditionally spend most of their test efforts) is practically never identical to Production and can at most be considered "Prod-like" but often lacks critical commonalities such as not having the same live customer data, smaller number of test accounts compared to real accounts, significantly smaller transaction volumes or traffic levels (even during most Performance Testing ramp-up periods), perhaps being run on completely different hardware, VMs, servers, or other inconsistencies between parts of the underlying technology stacks, having different configuration settings, having different non-comparable APIs or "test"-level 3rd party integration points, having different content, etc... the list goes on.

These are all reasons that despite our best intentions, it is fairly naiive to believe that doing most if not all of our testing in Non-Production should guarantee us a high level quality. In reality, what we are doing in those traditional QA environments is just letting our customers be our front-line testers in Production; allowing them to be the first to encounter major issues or notice little imperfections and problems and then report them back to our Operations/Customer-Support teams, for us to then (often at fairly high cost) need to get those teams to log and/or track those issues, perform root cause analysis between several teams, then often more urgently and hastily take action on these "unacceptable production issues" in a perpetually self-fulfilling cycle of mediocre quality. Instead, we must become comfortable "testing in Production". This is the philosophy behind Shift-Right Testing, where we integrate Automated Testing, A/B Testing and Observability & Monitoring tools with more modern Release Management approaches such as Canary releases, Blue-Green releases, Hot Deployments with dynamic/real-time FeatureFlags.


[10]


Types of Testing

[11] [12]

Unit

Unit Testing (sometimes referred to as "local testing" or abbreviated UT) is a software testing method by which individual units of source code, sets of one or more computer program modules together with associated control data, usage procedures, and operating procedures are tested to determine if they are fit for use. Intuitively, one can view a unit as the smallest testable part of an application. In procedural programming, a unit could be an entire module, but it is more commonly an individual function or procedure. In object-oriented programming, a unit is often an entire interface, such as a class, but could be an individual method. Unit tests are short code fragments created by programmers or occasionally by white box testers during the development process. Ideally, each test case is independent from the others. Substitutes such as method stubs, mock objects, fakes, and test harnesses can be used to assist testing a module in isolation. Unit tests are typically written and run by software developers to ensure that code meets its design and behaves as intended.

[13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23]

CBUT

Component-Based Usability Testing (CBUT) is a testing approach which aims at empirically testing the usability of an interaction component. The latter is defined as an elementary unit of an interactive system, on which behaviour-based evaluation is possible. For this, a component needs to have an independent, and by the user perceivable and controllable state, such as a radio button, a slider or a whole word processor application. The CBUT approach can be regarded as part of component-based software engineering branch of software engineering.

[24] [25] [26]

Mocks

The following list the main types of mocking approaches, listed from low-to-high fidelity, data-only to business-logic containing code:

* Dummy (data)
* Stub
* Mock
* Spy
* Fake

[27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38]

Functional

Functional Testing is a form of test upon an entire application in isolation from any external dependencies. In this sense the focus is the same as a Unit Test but the context is the entire application (minus any external dependencies) rather than its individual parts/units.

API Testing

A key form of Functional Testing is API Testing which hits an API directly without use of the application's User Interface (UI) which often invokes all phases and dependencies at once (which is more of a holistic/system-level test). Calling individual backend APIs that are depended upon by the front-end can help for monitoring the health of the application and act as a trigger as to the readiness for moving to the next stage of testing for running UI-centric system tests and/or integration. In addition, failures in Functional API Tests which are configured to run on a regular basis can be hooked into notifications to support teams to avoid time wasted on Root Cause Analysis when an area of the application fails due to a failure in a depended upon API.

[44]

Integration

Integration Testing (sometimes called integration and testing, abbreviated I&T) is the phase in software testing in which individual software modules are combined and tested as a group. It occurs after unit testing and before validation testing. Integration testing takes as its input modules that have been unit tested, groups them in larger aggregates, applies tests defined in an integration test plan to those aggregates, and delivers as its output the integrated system ready for system testing.

[45] [46] [47] [48] [49] [50]

Smoke

Smoke Testing for software is typically trying the major functions of the whole piece of software (or recently updated component) before carrying out formal testing, and comes from Smoke Testing in electrical engineering where the term literally means "looking for smoke" when powering electrical items or new connections within/between them for the first time. This type of testing is usually conducted immediately after the integration of software or components into larger systems, as such it could be considered as and conducted within either a part of Integration Testing or System Testing.

[51]

Automated

Automated Tests are repeatable, measurable and isolated test cases that can be run in unison with many other test cases with few or no dependencies. Software Tests have to be repeated often during development cycles to ensure quality. Every time source code is modified software tests should be repeated. For each release of the software it may be tested on all supported operating systems and hardware configurations. Manually repeating these tests is costly and time consuming. Once created, automated tests can be run over and over again at no additional cost and they are much faster than manual tests. Automated software testing can reduce the time to run repetitive tests from days to hours.[52][53]

[60] [61] [62] [63] [64] [65] [66] [67]

Page Object Pattern

[69] [70] [71] [72]

System

System Testing of software or hardware is testing conducted on a complete, integrated system to evaluate the system's compliance with its specified requirements. System testing falls within the scope of black box testing, and as such, should require no knowledge of the inner design of the code or logic. As a rule, system testing takes, as its input, all of the "integrated" software components that have passed integration testing and also the software system itself integrated with any applicable hardware system(s). The purpose of integration testing is to detect any inconsistencies between the software units that are integrated together (called assemblages) or between any of the assemblages and the hardware. System testing is a more limited type of testing; it seeks to detect defects both within the "inter-assemblages" and also within the system as a whole.

[73]

Regression

Regression Testing is a type of software testing that seeks to uncover new software bugs, or regressions, in existing functional and non-functional areas of a system after changes such as enhancements, patches or configuration changes, have been made to them. The intent of regression testing is to ensure that changes such as those mentioned above have not introduced new faults. One of the main reasons for regression testing is to determine whether a change in one part of the software affects other parts of the software. Common methods of regression testing include rerunning previously completed tests and checking whether program behavior has changed and whether previously fixed faults have re-emerged. Regression testing can be performed to test a system efficiently by systematically selecting the appropriate minimum set of tests needed to adequately cover a particular change.

[74] [75]

Acceptance

Tests conducted to determine if the requirements of a specification or contract are met.

[76] [77]

UAT

User Acceptance Testing (UAT) is the process of verifying that a solution works for the user. It is not system testing (ensuring software does not crash and meets documented requirements), but rather is there to ensure that the solution will work for the user i.e. test the user accepts the solution (software vendors often refer to as Beta testing). This testing should be undertaken by a Subject-Matter Expert (SME), preferably the owner or client of the solution under test, and provide a summary of the findings for confirmation to proceed after trial or review. In software development, UAT as one of the final stages of a project often occurs before a client or customer accepts the new system. Users of the system perform tests in line with what would occur in real life scenarios. The UAT acts as a final verification of the required business functionality and proper functioning of the system, emulating real-world usage conditions on behalf of the paying client or a specific large customer. If the software works as required and without issues during normal use, one can reasonably extrapolate the same level of stability in production. User tests, usually performed by clients or by end-users, do not normally focus on identifying simple problems such as spelling errors and cosmetic problems, nor showstopper defects, such as software crashes; testers and developers previously identify and fix these issues during earlier unit testing, integration testing, and system testing phases.

[78] [79]

Hallway Usability Testing

[81] [82] [83] [84] [85] [86] [87] [88] [89] [90] [91]

Visual Testing

Visual Testing is the act of looking at the general look & feel (theme/layout/colors/images) of a given application (i.e. desktop, web or mobile) and examining in great detail that it adheres to the agreed upon high-fidelity Wireframes/Mock-ups, Visual Style Guides, Design Guides, etc. Traditionally this has been an exteremely time-consuming and expensive task that most companies end up skipping or cutting corners on, simply because there is a limited QA budget which tends to be spent elsewhere (Unit, Functional, Integration, etc). With the increased pace of development and shorter releases cycles that CI/CD efforts have been driving, visual bugs have become significantly more common and reputation-damaging, occurring even at major "DevOps" companies like Amazon, Netflix, etc at the worst possible times.

With Automated Visual Testing tools using any of the following approaches, we can minimize Manual Testing requirements, and maximize detection, reporting & potentially self-correction of such visual defects:

  1. CSS & attribute matching (i.e. CSS selectors, or, img src)
  2. DOM comparison techniques (checking isVisible, isClickable, etc)
  3. Screenshots during UI/E2E Functional Test failures & errors (i.e. Selenium, HP TQM, etc)
  4. Screenshots + Open Source Image Recognition libraries (i.e. OpenCV, TensorFlow, etc)
  5. Screenshots + Pixel-to-Pixel Comparison & driver tools (i.e. SikuliX, etc)
  6. Screenshots + Cloud AI services (like Applitools Eyes, etc)

[92] [93] [94] [95] [96] [97] [98] [99] [100] [101]

A/B Testing

In Marketing and Business Intelligence, A/B testing is jargon for a randomized experiment with two variants, A and B, which are the control and treatment in the controlled experiment. It is a form of statistical hypothesis testing with two variants leading to the technical term, Two-sample hypothesis testing, used in the field of statistics. Other terms used for this method include bucket tests and split testing but these terms have a wider applicability to more than two variants. In online settings, such as web design (especially user experience design), the goal is to identify changes to web pages that increase or maximize an outcome of interest (e.g., click-through rate for a banner advertisement). Formally the current web page is associated with the null hypothesis. As the name implies, two versions (A and B) are compared, which are identical except for one variation that might affect a user's behavior. Version A might be the currently used version (control), while Version B is modified in some respect (treatment). For instance, on an e-commerce website the purchase funnel is typically a good candidate for A/B testing, as even marginal improvements in drop-off rates can represent a significant gain in sales.

[123] [124] [125] [126] [127] [128] [129] [130] [131]

Mobile Testing

Open Device Labs

[139] [140] [141] [142] [143]

[144]

Layout

Layout Testing is a form of testing focused on ensuring that responsive web designs retain the desired ratios and relative distances between page elements as resizing occurs and/or breakpoints are toggled.


Accessibility

Accessibility Testing is checking for any potential or known A11Y blockers, such as (but not limited to) those defined by WCAG.

[145] [146]

Performance

Performance Testing in software involves ensuring the quality and reliability of a particular set of that software as well as its components, and the inter-connections between them, in order to get an accurate picture of the health of the whole system. It includes a number of techniques including: Load Testing, Disaster Recovery Preparedness, High-Traffic Response Times, Failover Management, etc.

[147] [148] [149] [150] [151] [152] [153] [154] [155]

Load Testing

[156] [157]

Penetration Testing

Testing for Security vulnerabilities by Hacking, DDOS'ing, etc.

[158] [159] [160] [161] [162] [163] [164] [165]


Physical Penetration Testing

[166]

Exploratory Testing

[167] [168] [169] [170]

QA

Quality Assurance (QA) is a key aspect of the testing process and should be done throughout the development process, as new components are added.

[171]

Continuous Testing

Continuous Testing is the process of executing automated tests as part of the software delivery pipeline to obtain immediate feedback on the business risks associated with a software release candidate. For Continuous Testing to work, the scope of testing should include validation of requirements from the bottom up, as well as (if they are used) verification of User Stories to assess the realization of system requirements associated with achieving business goals that prompted codifying of the requirements in the first place.

TDD

Test-Driven Development (TDD) is an approach to software development where Requirements are turned into very specific test case(s), then the software is improved/enhanced to pass the new test(s). This is in contrast to more traditional software development that allows software to be added that is not proven to meet requirements by a specific passing test case/suite.

The following are the 5 steps for proper TDD:

  1. Add a test
  2. Run all tests and see if the new test fails
  3. Write the code
  4. Run tests
  5. Refactor code
TDD.png

[172] [173] [174] [175] [176] [177] [178] [179] [180] [181] [182]

ATDD

Acceptance Test Driven Development (ATDD) defines clear Acceptance Criteria (typically "as-tests") first prior to beginning any development. With clarity on the exact tests that will be expected to pass, implementation becomes much easier to validate and realize when it is truly "Done" or "Shippable".

BDD

Behavior Driven Development (BDD) combines practices from TDD and from Acceptance Test Driven Development (ATDD); like these, it includes the practice of writing tests first, but additionally focuses on tests which describe behavior, rather than emphasizing tests which validate or verify status of a unit of implementation. BDD requires clear understanding of the software's intended behavior and actual usage, through discussion with a project's stakeholders.

The practices of BDD include:

  1. Establishing goals of any stakeholders directly related to the business.
  2. Establishing features which will achieve those goals using feature injections.
  3. Establishing behavior of the application or of units of code using examples.
  4. Automating the selected examples to provide quick feedback, transparency & regression testing.

[183]

BDD.jpg

[184] [185] [186] [187] [188] [189]

[190] [191] [192] [193] [194] [195] [196] [197] [198] [199] [200] [201] [202] [203] [204] [205] [206]


Three Amigos

The "Three Amigos" model for building "Acceptance Criteria" that inform any Test Suites, Test Cases, Test Steps and/or Test Scenarios and clearly define the testing that QA and/or Business Acceptance Testers carry out.

Agile 3-amigos.png

[207] [208] [209] [210] [211] [212]

DDT

Data-Driven Testing is the loading of initialization values and/or test case input parameters from a source external to the Test(s) such as a properties file, CSV/TSV file, XML/JSON data, or some other form of configuration.

Code Coverage

Code Coverage is a measure used in software testing. It describes the degree to which the source code of a program has been tested. It is a form of testing that inspects the code directly and is therefore a form of white box testing. [213]

[218]

[220] [221] [222] [223]

Code Review

Code Review (also referred to as peer review) is the systematic examination of computer source code upon its being submitted (i.e. committed to SCM) for consideration for inclusion in a broader code base. It is intended to find mistakes overlooked in the initial development phase, improving the overall quality of software. Reviews are done in various forms such as pair programming, informal walkthroughs, and formal inspections.

[225] [226] [227] [228] [229] [230] [231] [232] [233] [234] [235] [236] [237] [238] [239] [240] [241] [242] [243] [244] [245] [246] [247] [248] [249] [250] [251] [252] [253] [254] [255] [256] [257] [258] [259] [260] [261] [262] [263] [264] [265] [266] [267] [268] [269] [270] [271] [272] [273] [274] [275] [276] [277]


Software Composition Analysis

Static Code Analysis

Static Code Analysis (SCA) is one of the main disciplines of the broader Software Composition Analysis (SCA) which focuses on code syntax, spacing, variable naming, and quality markers such as closing connections, prevention of memory leaks, detecting coding efficiency anti-patterns, etc.

Frontend LESS linting

stylelint "/apps/alc/clientlibs/**/*.less"
stylelint "/apps/alc/components/**/*.less"
stylelint "/apps/proline/clientlibs/**/*.less"
stylelint "/apps/proline/components/**/*.less"

[278]


LESS-to-CSS compilation

find . -name "*.less" -print0 | xargs -0 lessc
test:lint
autoless --source-map files www

CSS combination

cat *.css > main.css

[279]


JS linting

find . -name "*.js" -print0 | xargs -0 jslint

JS combination

cat *.js > main.js

[280]

YUI compressor CSS minification

java -jar yuicompressor-x.y.z.jar -v main.css -o main.min.css

JS minification

java -jar yuicompressor-x.y.z.jar -v main.js -o main.min.js

[281]

Node.JS Unit Testing (optional... WIP)

npm-run-all test:*


[304] [305] [306] [307] [308] [309] [310] [311] [312] [313] [314] [315] [316] [317] [318] [319]

Refactoring

[321] [322] [323] [324] [325] [326] [327] [328] [329] [330] [331] [332] [333] [334] [335] [336]

Legacy Code

Legacy Systems are methods/approaches, technologies, computer hardwares, software systems, watch/mobile/tablet/desktop/TV Application programs, Application Programming Interfaces (APIs) and/or Software Development Kits (SDKs) "of, relating to, or being a previous or outdated computer system" yet still in use by and/or depended upon by a company or particular group of users.

Legacy Code is any computer source code deemed old, antiquated, inefficient, excessively complex, confusing, hard-to-read, buggy/error-prone, obsolete itself or supporting something obsolete, using deprecated or decommissioned APIs/SDKs, or, simply an organization's existing codebase that was written over many years and which has not sufficiently evolved to reflect modern best practices. Often referencing a system as "legacy" implies that the system is out of date and/or in need of replacement, however, it could also be used in a respectful manner to indicate that it was an instrumental technology that paved the way for further standards or systems that are to follow it.

Long-lived code is susceptible to "software rot"[337], where changes to the runtime environment, or surrounding hardware/software may require maintenance or emulation of some kind to keep it working. Legacy code may be present to support legacy hardware, a separate legacy system, or a legacy customer using an old feature or software version.

While the term usually refers to source code, it can also apply to executable code that no longer runs on a later version of a system, or requires a compatibility layer to do so.

[338] [339]


Strangler Pattern

[340] [341] [342] [343] [344] [345]


Automated Code Refactors

WebDriver

[354] [355] [356] [357] [358] [359] [360] [361]

Debugging

[362] [363] [364] [365]\


Root Cause Analysis

Tools

Test Automation

[371] [372] [373] [374] [375]

Appium

[379] [380] [381] [382] [383] [384] [385] [386] [387] [388] [389] [390] [391]

[392]

[393] [394]

[395] [396] [397] [398] [399] [400] [401] [402] [403] [404] [405] [406] [407] [408] [409] [410] [411] [412] [413] [414] [415] [416] [417] [418] [419] [420] [421] [422] [423] [424] [425] [426] [427] [428] [429] [430] [431] [432]

Cypress

Test Management

HP QualityCenter

SpiraTest

[465]

Simulators/Emulators


Web Services

[466]

SOAP UI

[468] [469] [470] [471] [472] [473] [474] [475] [476] [477] [478] [479] [480] [481] [482] [483] [484] [485] [486] [487] [488] [489] [490] [491] [492] [493] [494] [495] [496]

Service Virtualization

ServiceV

[497] [498] [499] [500]

Hoverfly

[501]

Load UI

[502] [503]

Language-Specific

JavaScript & AJAX

[507] [508] [509] [510] [511] [512]

Selenium

[516] [517] [518] [519] [520]

[533] [534] [535] [536] [537] [538] [539]

[540] [541] [542] [543] [544] [545] WebDriver Manager: https://github.com/bonigarcia/webdrivermanager/ (allows to automate the management of the drivers) WebDriver Manager – EXAMPLES: https://github.com/bonigarcia/webdrivermanager-examples | EX#1-ChromeHeadless | EX#2-AppiumAndroidSeleniumGrid | EX#3-FirefoxChrome | EX#4-MultiBrowser | EX#5-Performance

[546] [547]

[548] [549] [550] [551] [552] [553] [554] [555] [556] [557] [558] [559] [560] [561] [562] [563] [564] [565] [566] [567] [568] [569] [570] [571] [572] [573] [574] [575] [576] [577] [578] [579] [580] [581] [582] [583] [584] [585] [586] [587] [588] [589] [590] [591] [592] [593] [594] [595] [596] [597] [598] [599] [600] [601] [602] [603] [604] [605] [606] [607] [608] [609] [610] [611] [612] [613] [614] [615] [616] [617] [618] [619] [620] [621] [622] [623] [624] [625] [626] [627] [628] [629] [630] [631] [632] [633] [634] [635] [636] [637] [638] [639] [640] [641] [642] [643] [644] [645] [646] [647] [648] [649] [650] [651] [652] [653] [654] [655]


Selenium GRID

[656] [657] [658] [659] [660] [661] [662] [663] [664] [665] [666] [667] [668] [669] [670]


[671] [672] [673] [674] [675] [676] [677] [678] [679] [680] [681] [682] [683] [684] [685] [686] [687] [688] [689] [690] [691] [692] [693] [694]

Selenium IDE

[695][696] [697][698] [699] [700] [701] [702]

[707] [708] [709] [710] [711] [712] [713] [714] [715] [716] [717] [718] [719] [720] [721] [722] [723] [724] [725] [726] [727] [728] [729] [730] [731] [732] [733] [734] [735] [736] [737] [738] [739] [740] [741] [742] [743] [744] [745] [746] [747] [748] [749] [750] [751] [752] [753] [754] [755] [756] [757] [758] [759] [760] [761] [762] [763] [764] [765] [766] [767] [768] [769] [770] [771] [772] [773] [774] [775] [776] [777] [778] [779] [780] [781] [782] [783] [784] [785] [786] [787] [788] [789] [790] [791] [792] [793] [794] [795] [796] [797] [798] [799] [800] [801] [802][803][804][805] [806] [807] [808] [809] [810] [811] [812] [813] [814] [815] [816] [817] [818]

jsUnit
FireUnit

PhantomJS

CasperJS


JAVA

jUnit

jUnit is the leading Unit Testing framework from the xUnit family.

EasyMock

[820] [821] [822] [823] [824] [825] [826]

Mockito

[827] [828] [829] [830] [831] [832] [833] [834] [835] [836] [837] [838] [839] [840]

PowerMock

PowerMock is an extension to existing Mocking frameworks that enable testing of otherwise "untestable" areas such as:

  1. final objects
  2. static methods
  3. private methods
  4. constructors
  5. enums


TestNG

TestNG is a popular Java framework meant to act as a complete testing suite rather than just a basic unit testing framework like jUnit. It supports Group Testing, Testing Dependencies and Failed Test Skipping (all of which jUnit does not, without further extensions or plugins).

t2framework

T2 is a powerful automated unit testing tool for JAVA.

FitNesse

PHP

PHP Unit


Ruby

Flex

FlexUnit
FlexMonkey
FlexCover


HTML


C++

System

Quick Test Pro

Automated

Sikuli

[852] [853] [854] [855] [856] [857] [858] [859] [860] [861] [862] [863] [864] [865] [866] [867] [868] [869] [870] [871] [872]

Performance

Taurus

[873]

LoadRunner

JMeter

Apache JMeter is a 100% pure Java application designed to load test client/server software (such as a web application). It may be used to test performance both on static and dynamic resources such as static files on servers, Java Servlets, ASP.NET, PHP, CGI scripts, Java objects, databases, FTP servers, and more. JMeter can be used to simulate a heavy load on a server, network or object to test its strength or to analyze overall performance under different load types.

Additionally, JMeter can help you regression test your application by letting you create test scripts with assertions to validate that your application is returning the results you expect. For maximum flexibility, JMeter lets you create these assertions using regular expressions.

JMeter Performance Tests are stored in JMX format with the following properties (loaded in this order):

  1. Thread Group
  2. Config Element(s)
  3. Pre-Processor(s)
  4. Timer(s)
  5. Logic Controller(s)/Sampler(s)
  6. Post-Processor(s)
  7. Assertion(s)
  8. Listener(s)

The most common uses of JMeter are for Performance Testing (under typical load), Load/Stress Testing (finding maximal load), Benchmarking, Failover Testing (removing one or more "nodes" in a network to check availability/speed, etc) and Disaster Recovery (bringing nodes that were out of the Load Balancer back into service).

[877] [878] [879] [880] [881] [882] [883] [884] [885] [886] [887] [888] [889] [890] [891] [892] [893] [894] [895] [896] [897] [898] [899] [900] [901] [902] [903] [904] [905] [906] [907] [908] [909] [910] [911] [912] [913] [914] [915] [916] [917] [918] [919] [920] [921] [922] [923] [924] [925] [926] [927] [928] [929] [930] [931] [932] [933] [934] [935] [936] [937] [938] [939] [940] [941] [942] [943] [944] [945] [946] [947] [948] [949] [950] [951] [952] [953] [954] [955] [956] [957] [958] [959] [960] [961] [962] [963] [964] [965] [966] [967] [968] [969] [970] [971] [972] [973]

Penetration


Resources


Tutorials


External Links

[1,016] [1,017] [1,018] [1,019] [1,020] [1,021]

[1,024][1,025]


References

  1. How do I use Headless Chrome in Chrome 60 on Windows 10?: https://stackoverflow.com/questions/45364102/how-do-i-use-headless-chrome-in-chrome-60-on-windows-10
  2. Continuous Testing -- Your Ultimate Summer Reading Guide: https://dzone.com/articles/continuous-testing-your-ultimate-summer-reading-gu
  3. Continuous Testing -- Transforming Testing for Agile and DevOps: https://dzone.com/refcardz/continuous-testing-101
  4. Ultimate Guide to Reducing the Amount of Defects and other Waste in your Product: https://mysoftwarequality.wordpress.com/2016/10/17/ultimate-guide-to-reducing-the-amount-of-defects-and-other-waste-in-your-product/
  5. Wasteful Activity #2 -- Playing with defects: https://wastebyexample.wordpress.com/2015/05/18/wasteful-activity-2-playing-with-defects/
  6. How I stopped logging bugs and started living happy: https://mysoftwarequality.wordpress.com/2013/09/10/how-i-stopped-logging-bugs-and-started-living-happy/
  7. Continuous Testing: What, Why, and How?: https://www.continuoustesting.com/2019/02/12/continuous-testing-what-why-and-how/
  8. Shift Left, Shift Right -- What Are We Shifting, and Why?: https://dzone.com/articles/shift-left-shift-right-what-are-we-shifting-and-wh
  9. What is shift-left testing?: https://blog.parasoft.com/what-is-the-shift-left-approach-to-software-testing
  10. How to Implement Testing in Production: https://www.split.io/blog/how-to-implement-testing-in-production/ (nice visual timeline to implement PROD testing)
  11. Different kinds of testing: https://blog.frankel.ch/different-kinds-testing/
  12. Defining Test Boundaries – An example: https://www.simpleorientedarchitecture.com/defining-test-boundaries/
  13. The Complete Unit Testing Collection (ROUND-UP): https://dzone.com/articles/the-complete-unit-testing-collection
  14. What does “DAMP not DRY” mean when talking about unit tests?: https://stackoverflow.com/questions/6453235/what-does-damp-not-dry-mean-when-talking-about-unit-tests
  15. Lean Testing or Why Unit Tests are Worse than You Think: https://blog.usejournal.com/lean-testing-or-why-unit-tests-are-worse-than-you-think-b6500139a009
  16. Unit Test Your Architecture with ArchUnit: https://blog.scottlogic.com/2019/12/05/unit-test-your-architecture-with-archunit.html | DOCS | EXAMPLES
  17. Writing Unit Tests for a Spring REST API With Kotlin and JUnit 5: Configuration: https://www.petrikainulainen.net/programming/testing/writing-unit-tests-for-a-spring-rest-api-with-kotlin-and-junit-5-configuration/
  18. 10 Awesome Features of Pytest for Unit Testing: https://dzone.com/articles/10-awesome-features-of-pytest
  19. Unit testing Bash scripts: https://advancedweb.hu/unit-testing-bash-scripts/
  20. Pragmatic Front-End Testing Strategies: https://medium.com/@toastui/pragmatic-front-end-testing-strategies-1-4a969ab09453
  21. 6 Small Unit Testing Tips: https://henrikwarne.com/2020/12/28/6-small-unit-testing-tips/
  22. Rethinking Unit Test Assertions with "RITEway wrapper" on top of "Tape" lightweight Unit Testing library: https://medium.com/javascript-scene/rethinking-unit-test-assertions-55f59358253f | SRC
  23. How I Wish I Had Some Unit Tests! An Example: https://blog.thecodewhisperer.com/permalink/how-i-wish-i-had-some-unit-tests-an-example
  24. Concierge Test .vs. "Wizard of Oz" Test: https://medium.com/@Kromatic/concierge-vs-wizard-of-oz-test-b6d2f71524a
  25. What Type of Lean Startup Experiment Should I Run?: https://grasshopperherder.com/what-type-of-lean-startup-experiment-should-i-run/ (Generative Research .vs. Evaluative Experiment)
  26. Testing Storybook Components in Any Browser – Without Writing Any New Tests!: https://applitools.com/blog/storybook-components-cross-browser-testing/ (simple "Test Stack" diagram that actually includes separate "Component Testing" category)
  27. Mocking in Unit Tests: https://dzone.com/articles/mocking-in-unit-tests
  28. The Test Double Rule of Thumb: http://engineering.pivotal.io/post/the-test-double-rule-of-thumb/
  29. When Writing Unit Tests, Don’t Use Mocks: https://sendgrid.com/blog/when-writing-unit-tests-dont-use-mocks/
  30. You Still Don’t Know How to Do Unit Testing (and Your Secret is Safe with Me): https://stackify.com/unit-testing-basics-best-practices/
  31. How exactly should Unit Tests be written without Mocking extensively?: https://softwareengineering.stackexchange.com/questions/382087/how-exactly-should-unit-tests-be-written-without-mocking-extensively
  32. Mocks or the real thing? Tips for better unit testing: https://blog.codecentric.de/en/2017/07/mocks-real-thing-tips-better-unit-testing/
  33. Mock yourself, not your tests: https://hernantz.github.io/mock-yourself-not-your-tests.html
  34. J.B. Rainsberger - Integrated Tests Are A Scam: https://vimeo.com/80533536
  35. You Don't Hate Mocks; You Hate Side-Effects: https://blog.thecodewhisperer.com/permalink/you-dont-hate-mocks-you-hate-side-effects
  36. How to Mock in Bash Unit Tests using aliases, functions, and PATH override: https://advancedweb.hu/how-to-mock-in-bash-tests/
  37. How to Test Java HTTP Client Usages (e.g. OkHttp, Apache HttpClient): https://rieckpil.de/how-to-test-java-http-client-usages-e-g-okhttp-apache-httpclient/
  38. "Wiremock" for RSocket: https://spring.io/blog/2021/06/02/wiremock-for-rsocket (yet another "tricky to Mock" area now covered)
  39. API Load Testing with cURL and RedLine13: https://www.redline13.com/blog/2019/11/api-load-testing-with-curl-and-redline13/
  40. Testing APIs Using Postman: https://dzone.com/articles/testing-apis-using-postman
  41. Postman Tutorial for Beginners with API Testing Example: https://www.guru99.com/postman-tutorial.html
  42. Karate framework -- REST API testing made easy!: https://aboullaite.me/karate-framework-rest-testing/
  43. Karate Netty -- standalone JAR: https://github.com/intuit/karate/tree/master/karate-netty#standalone-jar
  44. 10 API Testing Tips for Beginners (SOAP and REST): https://dzone.com/articles/10-api-testing-tips-for-beginners-soap-amp-rest
  45. Splitting Unit and Integration Tests using Maven & Surefire plugin: https://tech.asimio.net/2019/04/08/Splitting-Unit-and-Integration-Tests-using-Maven-and-Surefire-plugin.html
  46. Integrated Tests Are A Scam: http://blog.thecodewhisperer.com/permalink/integrated-tests-are-a-scam
  47. The Pitfalls of SIT: https://blog.scottlogic.com/2018/08/20/the-pitfalls-of-sit.html
  48. System INTEGRATION Testing (SIT): Complete Tutorial: https://www.guru99.com/system-integration-testing.html
  49. What is Integration Testing (tutorial with Integration Testing example): https://www.softwaretestinghelp.com/what-is-integration-testing/
  50. Easy Jakarta EE Integration Testing with the Payara Platform and Testcontainers: https://blog.payara.fish/jakarta-ee-integration-testing-with-testcontainers
  51. About the origin of Smoke Testing and the confusion it comes with: https://medium.com/@AikoPath/about-the-origin-of-smoke-testing-and-the-confusion-it-comes-with-dfa18eb8ce0 (origin was either in Electrical Engineering i.e. "turn on your circuit and if you see smoke from any wires, its wrong/bad", or, Mechanical Engineering/plumbing to check for leaks in pipes or buildings by pumping in safe smoke/steam to see if any escapes... or maybe both)
  52. Why Automated Testing?: http://support.smartbear.com/articles/testcomplete/manager-overview/
  53. Verification and Validation in Automated Testing: http://dzone.com/articles/verification-and-validation-in-automated-testing
  54. Automated Front-end Testing (PRESENTATION): https://rupl.github.io/frontend-testing/#/
  55. Top 15 Benefits of Automated Testing Tools: http://dzone.com/articles/top-15-benefits-of-automated-testing-tools
  56. PHP Travels: https://phptravels.com/demo/ (sample PHP application for Automated Testing "training/practice")
  57. Address Book example: https://address-book-example.herokuapp.com (good example where all functionality is completely behind Sign Up & Login processes)
  58. Automation Practice (PHP-based) site: http://automationpractice.com/index.php?id_product=1&controller=product
  59. BlazeMeter demo site: http://blazedemo.com/
  60. Eradicating Non-Determinism in Tests: https://martinfowler.com/articles/nonDeterminism.html
  61. Flaky Tests at Google and How We Mitigate Them: https://testing.googleblog.com/2016/05/flaky-tests-at-google-and-how-we.html
  62. 13 Scary Test Automation Practices: https://www.joecolantonio.com/13-scary-test-automation-practices/
  63. Top 10 Reasons (heard from procrastinators/nay-sayers) NOT To Do Automated Testing!: https://bespoken.io/blog/top-10-reasons-not-to-test/
  64. 3 ways to get test automation done within your sprints: https://techbeacon.com/app-dev-testing/3-ways-get-test-automation-done-within-your-sprints
  65. Angie Jones presents -- Test Automation Beyond Java 8: https://applitools.com/blog/java-test-automation/
  66. Using GitHub Copilot to Automate Tests: https://applitools.com/blog/using-github-copilot-to-automate-tests/
  67. Bad Spin – An Example of Ignoring the Automation Ecosystem: https://responsibleautomation.wordpress.com/2021/07/27/bad-spin-an-example-of-ignoring-the-automation-ecosystem/
  68. Page Object Pattern with TestNG: https://stackoverflow.com/questions/21967914/page-object-pattern-with-testng
  69. PageFactory, Page Objects and locators from an external (JSON) file: https://rationaleemotions.wordpress.com/2016/06/27/pagefactory-page-objects-and-locators-from-an-external-file/
  70. Page Object Pattern using PageFactory: http://toolsqa.com/selenium-webdriver/page-object-pattern-model-page-factory/
  71. Page Object Model (POM) & Page Factory in Selenium: Complete Tutorial: https://www.guru99.com/page-object-model-pom-page-factory-in-selenium-ultimate-guide.html
  72. Getting started with Page Object Pattern for your Selenium tests: https://www.pluralsight.com/guides/getting-started-with-page-object-pattern-for-your-selenium-tests
  73. What is System Testing – A Ultimate Beginner’s Guide: https://www.softwaretestinghelp.com/system-testing/
  74. Measuring Agility and Architectural Integrity: http://walkerroyce.com/PDF/Measuring_Agility.pdf
  75. What is Regression Testing?: https://www.mabl.com/articles/what-is-regression-testing
  76. What is Acceptance Testing?: https://www.tutorialspoint.com/software_testing_dictionary/acceptance_testing.htm
  77. How to Dockerize your End-to-End acceptance tests: https://medium.freecodecamp.org/how-to-dockerize-your-end-to-end-acceptance-tests-dbb593acb8e0
  78. What is the difference between system integration testing and user acceptance testing?: https://www.quora.com/What-is-the-difference-between-system-integration-testing-and-user-acceptance-testing
  79. Introduction to Capybara: https://testautomationu.applitools.com/capybara-ruby
  80. The Joel Test for 2017: https://myers.io/2017/04/04/the-joel-test-for-2017/
  81. Hallway Usability Testing, First Fridays Usability Program: https://www.slideshare.net/DigitalGov/hallway-usability-testing-first-fridays-usability-program
  82. Take Your UX on a Trial Run With Hallway Testing: https://www.appmakr.com/blog/ux-hallway-testing/
  83. Hallway usability testing -- How much of the UI do you actually make functional?: https://stackoverflow.com/questions/1864212/hallway-usability-testing-how-much-of-the-ui-do-you-actually-make-functional
  84. Study.com -- E-Learning course "Usability Testing Methods" - Definition & Hallway Usability: https://study.com/academy/lesson/usability-testing-methods-definition-hallway-usability.html
  85. Hallway Usability Testing and why it is important for your Startup: https://cnu.name/hallway-usability-testing/
  86. Apple's Usability Guidelines: http://www.apple2scans.net/files/1982-A2F2116-m-a2e-aiiedg.pdf (section on Usability Testing)
  87. 5 Killer Hallway Usability Testing Tips: https://usabilitylab.walkme.com/5-killer-hallway-usability-testing-tips/
  88. 10 Tips for Better Hallway Usability Testing: https://digital.gov/2014/02/19/10-tips-for-better-hallway-usability-testing/
  89. The complete guide to User Testing -- get to know your users (not through interviews or surveys): https://uxdesign.cc/little-things-in-ux-design-part-09-get-to-know-your-users-and-not-through-interviews-or-5f88c03b631b (9th part in a series on UX Design)
  90. Talking to users – but how? – Part 3: https://blog.codecentric.de/en/2020/03/talking-to-users-but-how-part-3/ (3rd part in a series on UX Design with purpose and 'product-market fit")
  91. Why You Only Need to Test with 5 Users: https://www.nngroup.com/articles/why-you-only-need-to-test-with-5-users/
  92. What is Visual Testing? A comprehensive explanation: https://applitools.com/blog/visual-testing
  93. Automated Visual Testing -- A Fast Path To Test Automation Success: https://testautomationu.applitools.com/automated-visual-testing-a-fast-path-to-test-automation-success/
  94. Wrong Tool, Wrong Time -- Re-Thinking Test Automation: https://applitools.com/blog/state-of-visual-testing-research-webinar
  95. Easy Parallel Mobile Visual Testing with Appium: https://applitools.com/blog/parallel-visual-testing-with-appium
  96. Meeting CI/CD Requirements -- Key Factors in Test Automation We Must Consider: https://applitools.com/blog/ci-requirements | [1]
  97. Things to consider when running visual tests in CI/CD pipelines - Getting Started (Part 1): https://jessicadeen.com/getting-started-visual-tests-cd/
  98. Things to consider when running visual tests in CI/CD pipelines - Azure Devops & GitHub Actions (Part 2): https://jessicadeen.com/visual-testing-actions-azdevops/
  99. Things to consider when running visual tests in CI/CD pipelines - Container Pipeline Edition (Part 3): https://jessicadeen.com/visual-test-consider-container/
  100. Visual Test-Driven Development For Responsive Interface Design (using the "Galen framework"): https://www.smashingmagazine.com/2015/04/visual-test-driven-development-responsive-interface-design/
  101. Galen framework: https://galenframework.com | DOCS - syntax (DSL-based Visual Testing)
  102. wikipedia: Evergage
  103. Salesforce "Interaction Studio": https://www.salesforce.com/products/marketing-cloud/customer-interaction/ (acquisition & re-branding of "Evergage" personalization service)
  104. The Holy Grail of Email Marketing - A/B Testing Plus Engagement Scoring: https://www.salesforce.com/blog/2018/01/a-b-testing-for-email-marketing.html (steals graphic from Optimizely)
  105. How To Get The Most Out Of A/B Testing In Salesforce Marketing Cloud?: http://blog.amogus.com/ab-testing-salesforce-marketing-cloud/
  106. Startup Spotlight - Evergage's Personalization Platform: http://www.enterpriseappstoday.com/crm/startup-spotlight-evergages-personalization-platform.html
  107. Why Salesforce Is Buying Evergage: https://pulse2.com/why-salesforce-is-buying-evergage/
  108. Salesforce Acquires Evergage, Will Use Personalization to Enhance Customer Data and Deliver More Relevant Experiences: https://martechseries.com/analytics/customer-data-platforms/salesforce-acquires-evergage-will-use-personalization-enhance-customer-data-deliver-relevant-experiences/
  109. The Beginner’s Guide to Google Optimize: https://conversionxl.com/blog/google-optimize/
  110. Analytics Testing: https://essenceoftesting.blogspot.ca/2017/03/analytics-testing.html
  111. WAAT 2.0 (BETA) available for use: https://essenceoftesting.blogspot.ca/2016/09/waat-20-beta-available-for-use.html
  112. ProxyManager class, for managing your BrowserMob proxy, manipula: ting HAR files, etc https://gist.github.com/mmerrell/f3409f5e9366cb62457f100bc92d46ba
  113. Google tutorial on Puppeteer: https://developers.google.com/web/tools/puppeteer/
  114. Puppeteer - quick start guide: https://developers.google.com/web/tools/puppeteer/get-started
  115. Browser Automation with Puppeteer: https://www.sitepen.com/blog/browser-automation-with-puppeteer/ (nice recap of Chrome headless command-line run commands)
  116. Headless Testing with Puppeteer: https://dev.to/headlesstesting/headless-testing-with-puppeteer-bbo
  117. Puppeteer with Firefox: https://chercher.tech/puppeteer/puppeteer-with-firefox
  118. Puppeteer .vs. Selenium: https://linuxhint.com/puppeteer_vs_selenium/
  119. The power of Headless Chrome and browser automation (Google I/O '18): https://www.youtube.com/watch?v=lhZOFUY1weo
  120. Puppeteer -- step-by-step tutorial series: https://www.youtube.com/playlist?list=PL-hNDoK1-od_-4jX3ZL8LMpvlxmZ4cp10
  121. The Ultimate Unit Testing Cheat-sheet: https://gist.github.com/yoavniran/1e3b0162e1545055429e (for Mocha, Chai & Sinon)
  122. An Overview of JavaScript Testing in 2020: https://medium.com/welldone-software/an-overview-of-javascript-testing-7ce7298b9870
  123. Applitools Visual Test Automation of A/B Testing cases — Validating Multiple Variations: https://dzone.com/articles/ab-testing-validating-multiple-variations
  124. 10 Best A/B and Multivariate Testing Tools for Conversion Rate Optimization: https://uxplanet.org/10-best-a-b-and-multivariate-testing-tools-for-conversion-rate-optimization-d5f461f06a1d
  125. Selecting the best artwork for videos through A/B testing: https://netflixtechblog.com/selecting-the-best-artwork-for-videos-through-a-b-testing-f6155c4595f6
  126. Decision Making at Netflix: https://netflixtechblog.com/decision-making-at-netflix-33065fa06481
  127. Quasi Experimentation at Netflix: https://netflixtechblog.com/quasi-experimentation-at-netflix-566b57d2e362
  128. What is an A/B Test? (how Netflix thinks about them anyway): https://netflixtechblog.com/what-is-an-a-b-test-b08cc1b57962
  129. Interpreting A/B test results - false positives and statistical significance: https://netflixtechblog.com/interpreting-a-b-test-results-false-positives-and-statistical-significance-c1522d0db27a
  130. Experimentation is a major focus of Data Science across Netflix: https://netflixtechblog.com/experimentation-is-a-major-focus-of-data-science-across-netflix-f67923f8e985
  131. From weeks to seconds - building “mega-assets” to uncover joyful moments!: https://netflixtechblog.medium.com/from-weeks-to-seconds-building-mega-assets-to-uncover-joyful-moments-b3cedcf37ffc (testing/optimizing thumbnail variations)
  132. A new beginning - entertainment on mobile: https://essenceoftesting.blogspot.in/2016/12/a-new-beginning-entertainment-on-mobile.html
  133. How to enable seamless running of appium tests on developer machines?: https://essenceoftesting.blogspot.in/2016/12/how-to-enable-seamless-running-of.html
  134. Features of my Android Test Automation Framework: https://essenceoftesting.blogspot.in/2017/02/features-of-my-android-test-automation.html
  135. How to upgrade the appium-uiautomator2-driver version for appium 1.6.3?: https://essenceoftesting.blogspot.in/2017/02/how-to-upgrade-appium-uiautomator2.html
  136. Finding my way out of bottomless pit with Appium & Android 7.0 for parallel test runs: https://essenceoftesting.blogspot.in/2017/02/finding-my-way-out-of-bottomless-pit.html
  137. Sharing implementation of cucumber-jvm - Appium test framework: https://essenceoftesting.blogspot.in/2017/02/sharing-implementation-of-cucumber-jvm.html
  138. Features of my Android Test Automation Framework: https://essenceoftesting.blogspot.ca/2017/02/features-of-my-android-test-automation.html
  139. How To Establish An Open Device Lab For Better Mobile TestingL https://www.smashingmagazine.com/2012/09/establishing-an-open-device-lab/
  140. Testing Mobile -- Emulators, Simulators And Remote Debugging: https://www.smashingmagazine.com/2014/09/testing-mobile-emulators-simulators-remote-debugging/
  141. Test on Real Mobile Devices without Breaking the Bank: https://bradfrost.com/blog/post/test-on-real-mobile-devices-without-breaking-the-bank/
  142. An Experience Report Building a Mobile Automated Test Lab With SOASTA TouchTest: evolvingtowardagile.blogspot.com/2013/04/an-experience-report-building-mobile.html
  143. 3 Ways to run Automated Tests on Azure DevOps: https://blog.techfabric.com/3-ways-to-run-automated-tests-on-azure-devops/
  144. Microsoft Introduces a Fully-Managed Azure Load Testing Service in Preview : https://www.infoq.com/news/2021/12/azure-load-testing-preview/
  145. Shifting Accessibility Testing to the Left: https://applitools.com/blog/shifting-accessibility-testing-to-the-left/
  146. Mobile-Accessibility Testing Toolbox (iOS & Android): https://www.tpgi.com/on-demand-webinar-mobile-accessibility-testing-toolbox-2
  147. Performance Testing resources - Articles, Books & Papers: http://www.perftestplus.com/pubs.htm
  148. How to interpret and report your performance test results (so people actually read them): https://www.soasta.com/blog/how-to-interpret-report-performance-test-results/
  149. Mobile Load Testing -- The Next Phase in Mobile Testing: http://dzone.com/articles/mobile-load-testing-the-next-phase-in-mobile-testi-1
  150. Front-End Performance -- The Dark Side: https://dev.opera.com/blog/timing-attacks/
  151. Web Performance Talk (Mobile .vs. Desktop) - April 2016: https://docs.google.com/presentation/d/11fLFu-Mq5zM3wAfZkMbEzJSu6dy9cp2HH0njU11OPPI/
  152. Performance Test Results 2016: https://www.slideshare.net/fullscreen/eproegler/interpreting-performance-test-results/
  153. Top Performance Metrics for Java, .NET, PHP, Node.js, and Python: https://dzone.com/articles/top-performance-metrics-for-java-net-php-nodejs-an
  154. Automated Performance Tests in Jenkins CI Environments: http://dzone.com/articles/automated-performance-tests-in-jenkins-ci-environm
  155. Measuring Web Page Performance with Selenium 2 and the Web Timings API: http://deanhume.com/measuring-web-page-performance-with-selenium-2-and-the-web-timings-api/
  156. SOAK TEST – A PRACTICAL EXAMPLE: https://octoperf.com/blog/2019/02/21/soak-test-practical-example/
  157. A Beginner’s Guide to Interpreting Load Test Results: https://www.redline13.com/blog/2021/04/a-beginners-guide-to-interpreting-load-test-results/
  158. Tamper Dev: https://tamper.dev | DEMO (extension to edit HTTP/HTTPS requests & responses as they happen without need of a proxy)
  159. Top 10 Free Hacking Tools for Penetration Testers: https://dzone.com/articles/top-10-free-hacking-tools-for-penetration-testers
  160. PortDog - Simple Python Script to Detect Port Scanning Techniques: https://www.kitploit.com/2015/08/portdog-simple-python-script-to-detect.html
  161. REST API Security -- Pen Tests: https://dzone.com/articles/rest-api-security-tests-pen-test
  162. 9 Load Testing Best Practices (Don’t Make These Mistakes): https://testguild.com/best-load-testing/
  163. API path discovery and more PenTesting tips with Chrome Developer Tools: https://www.youtube.com/watch?v=Y1S5s3FmFsI
  164. Introduction to GraphQL pentesting: https://www.youtube.com/watch?v=OQCgmftU-Og
  165. My Favorite Pentest Tools (Top 15): https://medium.com/geekculture/my-favorite-pentest-tools-top-15-52e923d77d45
  166. I'll Let Myself In -- Tactics of Physical Pen Testers: https://www.youtube.com/watch?v=rnmcRTnTNC8'
  167. Why test automation is a lot like bubble wrap: https://www.ontestautomation.com/why-test-automation-is-a-lot-like-bubble-wrap/
  168. Exploratory Testing explained: https://martinfowler.com/bliki/ExploratoryTesting.html
  169. Exploratory Testing - A Detailed Guide: https://dzone.com/articles/exploratory-testing-a-detailed-guide
  170. Exploratory Testing (ET) - What, When, Why and How: https://medium.com/xandr-tech/exploratory-testing-et-what-when-why-and-how-a29a879cb20e
  171. QA best practices -- How to Do Smart TV Application Testing Right: https://stage-red.exadel.com/news/qa-best-practices-how-to-do-smart-tv-application-testing-right/
  172. TDD .vs. BDD: http://www.developmentthatpays.com/files/DevelopmentThatPays-TDDvsBDD-CheatSheet-1-4.pdf
  173. Why TDD?: https://builttoadapt.io/why-tdd-489fdcdda05e
  174. 8 Observations On Test Driven Development: https://medium.com/@solidi/8-observations-on-test-driven-development-a9b5144f868
  175. A comparison of "assertion" libraries: https://blog.frankel.ch/comparison-assertion-libraries/
  176. Test-Driven Development -- Really, It’s a Design Technique: https://www.infoq.com/articles/test-driven-design-java
  177. Unit testing & TDD concepts with best practice guidelines: https://www.slideshare.net/tamanm/unit-testing-tdd-concepts-with-best-practice-guidelines
  178. Why TDD: https://builttoadapt.io/why-tdd-489fdcdda05e
  179. Test-Driven Development - Really, It’s a Design Technique: https://www.infoq.com/articles/test-driven-design-java
  180. TDD Classic State Based UI (an example in Java+Swing): http://blog.code-cop.org/2020/02/tdd-classic-state-based-ui.html
  181. A Natural Microflow in TDD: https://blog.thecodewhisperer.com/permalink/a-natural-microflow-in-tdd (sometimes Red-Green-Refactor-Refactor-RemoveTests is ok too)
  182. How TDD Can Prevent Over-Engineering (on the front-end too): https://itnext.io/how-tdd-can-prevent-over-engineering-1265a02f8863
  183. Behaviour Driven Development (BDD): https://dzone.com/articles/behaviour-driven-development-bdd-1
  184. BDD: https://www.agilealliance.org/glossary/bdd/
  185. Behavior Driven Development (SLIDES): https://www.slideshare.net/marakana/behavior-driven-development-11222326
  186. Test-Driven Development (TDD) .vs. Behaviour-Driven Development (BDD): https://businessanalystlearnings.com/technology-matters/2014/8/13/test-driven-vs-behaviour-driven-development
  187. Behaviour-Driven Development: https://www.future-processing.pl/blog/behaviour-driven-development/
  188. What are the different Agile Testing Methodology? Test Driven Development, Behavior Driven Development: http://istqbexamcertification.com/what-are-the-different-agile-testing-methodology-test-driven-development-behavior-driven-development/
  189. What is BDD and What Does It Mean for Testers?: https://dzone.com/articles/what-is-bdd-and-what-does-it-mean-for-testers-abst
  190. TDD and BDD in Java 8 - what's in it for me?: https://www.slideshare.net/wakaleo/tdd-and-bdd-in-java-8-whats-in-it-for-me
  191. BDD Using Cucumber JVM and Groovy (PRESENTATION): https://www.infoq.com/presentations/bdd-cucumber-groovy
  192. Selenium Integration with Cucumber BDD tool: https://www.youtube.com/watch?v=Vv7hHrVX_Zg
  193. Do you really need that Cucumber with your Selenium?: https://www.ontestautomation.com/do-you-really-need-that-cucumber-with-your-selenium/
  194. Cucumber BDD Automated Acceptance Testing example: https://www.katalon.com/resources-center/blog/cucumber-bdd-automation-testing/
  195. Gherkin Reference: https://cucumber.io/docs/gherkin/reference/
  196. Using “Given-When-Then” to Discover and Validate Requirements: https://www.ebgconsulting.com/blog/using-given-when-then-to-discover-and-validate-requirements-2/
  197. Behavior Driven Development - BDD (YOUTUBE PLAYLIST): https://www.youtube.com/playlist?list=PLngnoZX8cAn9kbu_bI_YUCZIkrcyIG_M6
  198. To-Do app to demonstrate "SubSecond" BDD Framework tests: https://github.com/subsecondtdd/todo-subsecond
  199. Acceptance Criteria -- Purposes, Formats, and Best Practices: https://www.altexsoft.com/blog/business/acceptance-criteria-purposes-formats-and-best-practices/
  200. Hybrid Development - The Value at the Intersection of TDD, DDD & BDD: https://dzone.com/articles/hybrid-development-with-tdd-ddd-bdd
  201. Examples to show different ways of creating Cucumber feature files (spec converted to Java): https://medium.com/@bcarunmail/examples-to-show-different-ways-of-creating-cucumber-feature-files-dbe8c04366bc
  202. Specify Business Rules by Example: https://itsadeliverything.com/specifying-business-rules-by-example
  203. Modern Best Practices for Testing in Java: https://phauer.com/2019/modern-best-practices-testing-java/
  204. BDD - Writing an Automated Test Suite Isn’t Rocket Science: https://betterprogramming.pub/bdd-writing-a-test-suite-before-writing-code-6279e4cf4be6
  205. What BDD Is and Why You Need It -- Java & Behavior Driven Development: https://dzone.com/articles/java-bdd-simple-and-clear-with-examples | SRC
  206. Introducing Protocol-Oriented BDD in Swift for iOS Apps (Part 1): https://dzone.com/articles/introducing-protocol-oriented-bdd-in-swift-for-ios
  207. Behavior Driven Development with 3 Amigo’s task: https://pritamsen.wordpress.com/2014/05/07/behavior-driven-development-with-3-amigos-task/
  208. Agile product delivery - the Three Amigos approach: https://www.lendinvest.com/blog/product-delivery-the-three-amigos-approach/
  209. The importance of three amigos in agile!: https://www.devopsonline.co.uk/the-importance-of-three-amigos-in-agile/
  210. The 3 Amigos Meeting: https://awhnet.medium.com/the-3-amigos-meeting-one-meeting-is-all-you-need-8af8b4a58ba2
  211. Three Amigos Meeting – Agree the tests before development starts: https://itsadeliverything.com/three-amigos-meeting-agree-the-tests-before-development-starts
  212. 3 Amigos – Bytesize Agile (VIDEO): https://www.scrum.org/resources/blog/3-amigos-bytesize-agile
  213. wikipedia: Code coverage
  214. Java code coverage reports in Eclipse: http://margelatu.org/2009/06/25/java-code-coverage-reports-in-eclipse/
  215. Code Coverage for Free - How to Use EMMA: http://www.developer.com/mgmt/article.php/3678041/Code-Coverage-for-Free-How-to-Use-EMMA.htm
  216. Installing and using Code Coverage plugin in NetBeans 6.5: http://newsintegrator.wordpress.com/2008/11/26/installing-and-using-code-coverage-plugin-in-netbeans-65/
  217. Is 100% Code Coverage Possible?: http://java.dzone.com/articles/100-code-coverage-possible
  218. An Introduction to Code Coverage: https://dzone.com/articles/an-introduction-to-code-coverage
  219. Atlassian Clover is now open source: https://www.atlassian.com/blog/announcements/atlassian-clover-open-source
  220. TDD -- The Practice of Theories: Adding “For-all”Statements to “There-Exists” Tests: web.archive.org/web/20110608210825/http://shareandenjoy.saff.net/tdd-specifications.pdf
  221. The Practice of Theories in Unit Testing & TDD (WHITEPAPER): http://web.archive.org/web/20071014232338/http://shareandenjoy.saff.net/2006/12/new-paper-practice-of-theories.html
  222. JUnit team on "Unit Testing theories": https://github.com/junit-team/junit4/wiki/Theories
  223. Reporting Code Coverage Using Maven and JaCoCo Plugin : https://dzone.com/articles/reporting-code-coverage-using-maven-and-jacoco-plu
  224. 5 Code Review Tricks the Experts Use - Based on 3.2 Million Lines of Code: http://dzone.com/articles/5-code-review-tricks-the-experts-use-based-on-32-m (based on Cisco & OverOps commissioned studies)
  225. Code Reviews -- A Framework for Startups: https://summify.wordpress.com/2011/09/21/code-reviews-a-framework-for-startups/
  226. The only valid measure of "Code Quality" - Daily WTFs or WTFs/min: http://www.osnews.com/story/19266/WTFs_m
  227. wikipedia: Principle of least astonishment (POLA)
  228. What does it mean to write “good code”?: https://softwareengineering.stackexchange.com/questions/17443/what-does-it-mean-to-write-good-code
  229. What Is Clean Code? – In Quotes: https://theholyjava.wordpress.com/2012/12/15/what-is-clean-code-quotes/
  230. How to Evaluate Software Quality from Source Code: https://www.daedtech.com/evaluate-software-quality-source-code/
  231. The 10 Pull Request Commandments: https://medium.com/@dsteplight/the-10-pull-request-commandments-d512b8c881bc
  232. The Art of Pull Requests: https://hackernoon.com/the-art-of-pull-requests-6f0f099850f9
  233. How to Do Code Reviews Like a Human: https://mtlynch.io/human-code-reviews-1/
  234. How 680 Developers Say We Can Increase Code Quality: https://hackernoon.com/how-680-developers-say-we-can-increase-code-quality-339908809d19
  235. Unlearning toxic behaviors in a code review culture: https://medium.freecodecamp.org/unlearning-toxic-behaviors-in-a-code-review-culture-b7c295452a3c
  236. The Rule of Three (and code re-use .vs. refactoring for more reusability): https://blog.codinghorror.com/rule-of-three/
  237. 10 Code Commit Best Practices for Streamlined Development: https://www.perforce.com/blog/vcs/10-code-commit-best-practices-streamlined-development
  238. Code Review at Cisco Systems – The largest case study ever done on code review process; data and lessons.: https://support.smartbear.com/support/media/resources/cc/book/code-review-cisco-case-study.pdf
  239. Lightweight Code Review -- Episode 4 - The Largest Case Study of CodeReview, Ever: https://support.smartbear.com/support/media/resources/cc/Episode_4_TheLargestCaseStudyOfCodeReviewEver.pdf
  240. Code Review study developed by OverOps & Cisco's 10-month studies on Code Review processes: https://dzone.com/articles/5-code-review-tricks-the-experts-use-based-on-32-m
  241. The Code Review - The Most Important Developer Practice: https://dzone.com/articles/the-most-important-developer-practice
  242. Why code reviews matter (and actually save time!): https://www.atlassian.com/agile/software-development/code-reviews
  243. Atlassian - The (written) unwritten guide to pull requests: https://www.atlassian.com/blog/git/written-unwritten-guide-pull-requests
  244. Atlassian - Making a Pull Request: https://www.atlassian.com/git/tutorials/making-a-pull-request
  245. Atlassian - Pull requests and code review: https://confluence.atlassian.com/bitbucket/work-with-pull-requests-223220593.html
  246. Atlassian - Creating Optimal Reviews: https://www.atlassian.com/blog/archives/creating_optimal_reviews
  247. Atlassian - 5 tips for great Code Review:https://www.atlassian.com/blog/software-teams/5-tips-great-code-reviews
  248. Atlassian - Why Code Reviews matter and actually save time: https://www.atlassian.com/agile/software-development/code-reviews
  249. BitBucket team - Learn about code review in Bitbucket Cloud: https://www.atlassian.com/git/tutorials/learn-about-code-review-in-bitbucket-cloud
  250. Awesome Code Review list of lists: https://github.com/joho/awesome-code-review
  251. The Pull Request 10 Commandments: https://medium.com/@dsteplight/the-10-pull-request-commandments-d512b8c881bc
  252. Code Review best practices: https://medium.com/palantir/code-review-best-practices-19e02780015f
  253. Pull Request Etiquette: https://gist.github.com/mikepea/863f63d6e37281e329f8
  254. 10 tips for better Pull Requests: http://blog.ploeh.dk/2015/01/15/10-tips-for-better-pull-requests/
  255. The art of Pull Requests: https://hackernoon.com/the-art-of-pull-requests-6f0f099850f9
  256. Code Review Guidelines: https://blog.philipphauer.de/code-review-guidelines/
  257. Code Review Best Practices: https://www.kevinlondon.com/2015/05/05/code-review-best-practices.html
  258. Best practices for peer Code Review: https://smartbear.com/learn/code-review/best-practices-for-peer-code-review/
  259. Keeping Peer Code Review An Agile Process: https://smartbear.com/blog/develop/peer-code-review-an-agile-process/
  260. Crash Course in Lightweight Code Review: http://www.drdobbs.com/architecture-and-design/crash-course-in-lightweight-code-review/215800147
  261. Getting the Absolute Most Out of Your Peer Review Data: https://smartbear.com/blog/collaborate/getting-the-absolute-most-out-of-your-peer-review/
  262. Calculate Your ROI on Code Reviews: https://smartbear.com/product/collaborator/roi-calculator/
  263. Metrics for Gerrit code reviews: http://www.sis.uta.fi/~tp54752/pub/gerrit/gerrit-codereviews.pdf
  264. Code Review for Real People: https://hackernoon.com/code-review-for-real-people-261e3d9124ba
  265. How to Do Code Reviews Like a Human Pt1: https://mtlynch.io/human-code-reviews-1/
  266. How to Do Code Reviews Like a Human Pt2: https://mtlynch.io/human-code-reviews-2/
  267. What does it mean to write “good code”?: https://softwareengineering.stackexchange.com/questions/17443/what-does-it-mean-to-write-good-code (WTFs per minute)
  268. Code Review Best Practices: https://blog.palantir.com/code-review-best-practices-19e02780015f
  269. Modern Code Review -- A Case Study at Google: https://www.zora.uzh.ch/id/eprint/152982/1/icse2018seip.pdf
  270. CodeFlow -- Improving the Code Review Process at Microsoft: https://queue.acm.org/detail.cfm?id=3292420
  271. How 680 Developers Say We Can Increase Code Quality: https://hackernoon.com/how-680-developers-say-we-can-increase-code-quality-339908809d19
  272. How one (of 4 core) code review rule(s) turned my team into a dream team: https://medium.com/inside-league/how-one-code-review-rule-turned-my-team-into-a-dream-team-fdb172799d11 (Rule#4 - if PR is for a bug fix, change must include a Unit Test or other test that will catch a future breakage)
  273. The 8-Part Guide to Better Code Review Checklists: https://dzone.com/articles/the-8-part-guide-to-better-code-review-checklists
  274. 9 Best Practices for Effective Code Review: https://dzone.com/articles/9-best-practices-for-effective-code-review?edition=671395
  275. Guidelines for Java Code Reviews: https://dzone.com/articles/guidelines-for-java-code-reviews
  276. 9 Best Practices for Effective Code Review: https://leobit.com/blog/effective-code-review-best-practices/
  277. Don’t do Code Review, try Mob instead: https://medium.com/verotel/dont-do-code-review-try-mob-instead-82149ef035df
  278. LESS linting: https://stylelint.io/user-guide/cli/
  279. LESS-to-CSS compilation: https://stackoverflow.com/questions/16492940/how-to-install-and-run-lessc-on-top-of-node-js-and-windows | https://stackoverflow.com/questions/5691173/how-do-i-compile-a-directory-full-of-less-css-files-to-css
  280. JSlint with multiple files: https://stackoverflow.com/questions/7628009/jslint-with-multiple-files
  281. Minify Javascript and CSS with YUI Compressor: https://electrictoolbox.com/minify-javascript-css-yui-compressor/
  282. Apache Maven plugin - PMD: https://maven.apache.org/plugins/maven-pmd-plugin/
  283. PMD-Jenkins -- how to use it: https://stackoverflow.com/questions/17294515/pmd-jenkins-how-to-use-it
  284. PMD Eclipse Tutorial: https://www.javatips.net/blog/pmd-in-eclipse-tutorial?view=all
  285. Running all PMD rulesets from command line: https://stackoverflow.com/questions/23116108/running-all-pmd-rulesets-from-command-line
  286. How to generate reports in PMD using: Command Linehttps://stackoverflow.com/questions/9682149/how-to-generate-reports-in-pmd-using-command-line
  287. Apache Maven plugin - FindBugs: https://gleclaire.github.io/findbugs-maven-plugin/usage.html
  288. Tutorial on using FindBugs with Maven: https://gualtierotesta.wordpress.com/2015/06/14/tutorial-using-findbugs-with-maven/
  289. FindBugs Maven Plugin Tutorial: https://www.petrikainulainen.net/programming/maven/findbugs-maven-plugin-tutorial/
  290. Apache Maven plugin - Checkstyle: http://maven.apache.org/plugins/maven-checkstyle-plugin/
  291. Checkstyle vs PMD vs Findbugs: http://continuousdev.com/2015/08/checkstyle-vs-pmd-vs-findbugs/
  292. Using the Checkstyle, PMD, and FindBugs Reports: https://www.safaribooksonline.com/library/view/jenkins-the-definitive/9781449311155/ch09s05.html
  293. The Ultimate List of 38 JavaScript Tools: https://hackernoon.com/the-ultimate-list-of-javascript-tools-e0a5351b98e3
  294. JSLint with multiple files: https://stackoverflow.com/questions/7628009/jslint-with-multiple-files
  295. These tools will help you write clean (frontend) code:https://medium.freecodecamp.org/these-tools-will-help-you-write-clean-code-da4b5401f68e
  296. How to install and run lessc on top of node.js and Windows?: https://stackoverflow.com/questions/16492940/how-to-install-and-run-lessc-on-top-of-node-js-and-windows
  297. How do I compile a directory full of less css files to css?: https://stackoverflow.com/questions/5691173/how-do-i-compile-a-directory-full-of-less-css-files-to-css
  298. "lessc": https://lesscss.org
  299. Compressing JS & CSS files using YUI compressor: https://stackoverflow.com/questions/24858977/compressing-js-and-css-files-using-yui-compressor
  300. How to automate JavaScript files compression with YUI Compressor?: https://stackoverflow.com/questions/227288/how-to-automate-javascript-files-compression-with-yui-compressor
  301. How to use YUI Compressor in Ant build script for Javascript & CSS: https://stackoverflow.com/questions/16595802/how-to-use-yui-compressor-in-ant-build-script-for-javascript-and-css
  302. Minifying JS/CSS: http://wiki.ubik-ingenierie.com/ubikwiki/index.php?title=Minifying_JS/CSS
  303. A Case Study on Spring Framework: https://dzone.com/articles/a-case-study-on-spring-framework
  304. Automate Your Code Reviews with Static Code Analysis: https://blog.codacy.com/automate-your-code-reviews-with-static-code-analysis-7d8ab0c81b03
  305. The Wise Developer's Guide to Static Code Analysis featuring FindBugs, Checkstyle, PMD, Coverity and SonarQube: https://zeroturnaround.com/rebellabs/developers-guide-static-code-analysis-findbugs-checkstyle-pmd-coverity-sonarqube/
  306. Static Code Analysis – (automating with) Jenkins: http://www.treselle.com/blog/static-code-analysis-jenkins/
  307. Lint your CSS with stylelint: https://css-tricks.com/stylelint/
  308. Review of CSS Linting Tools: https://blog.codacy.com/review-of-css-linting-tools-760ae1baade2
  309. 10 CSS and JavaScript Linting Tools for Code Optimization: https://www.hongkiat.com/blog/code-optimization-css-js-linting-tools/
  310. How to Analyze Your Code Quality in 10 Minutes With Sonarqube and its Docker container: https://dzone.com/articles/how-to-analyze-your-code-quality-in-10-minutes-wit
  311. SonarQube SCA rules: JAVA
  312. Using SonarQube to Analyze a Java Project: https://medium.com/linagora-engineering/using-sonarqube-to-analyze-a-java-project-abeee15e3779
  313. How to configure Fortify SCA with Jenkin Build Server and Fortify SSC?: https://fortify-maven.blogspot.com/2016/07/how-to-configure-fortify-sca-with.html
  314. Configuring a Project to Exclude Certain Sonar Violations: https://www.baeldung.com/sonar-exclude-violations
  315. Comparing 9 Code Quality tools: https://dzone.com/articles/comparing-9-code-quality-tools-of-2020
  316. Semgrep -- lightweight, ultra-fast, OSS static analysis tool to find bugs & enforce code standards: https://semgrep.dev | DOCS | INTEGRATIONS
  317. The Forrester Wave™: Software Composition Analysis, Q3 2021: https://reprints2.forrester.com/#/assets/2/425/RES176091/report
  318. wikipedia: Semgrep
  319. SemGrep: https://semgrep.dev | SRC
  320. Dzone backup of "What Refactoring is, and what it isn’t" article: http://agile.dzone.com/articles/what-refactoring-and-what-it-0
  321. What Is Refactoring?: https://dzone.com/articles/what-is-refactoring
  322. What is Code Refactoring?: https://thecustomizewindows.com/2021/02/what-is-code-refactoring/
  323. © Scaled Agile, Inc. -- Refactoring: https://www.scaledagileframework.com/refactoring/
  324. AgileAlliance -- Refactoring: https://www.agilealliance.org/glossary/refactoring/
  325. The Ultimate Engineer's Guide to Code Refactoring: https://dzone.com/articles/the-engineers-complete-guide-to-technical-debt
  326. Code Refactoring Best Practices -- When (and When Not) to Do It: https://www.altexsoft.com/blog/engineering/code-refactoring-best-practices-when-and-when-not-to-do-it/
  327. Lessons from 6 software rewrite stories: https://medium.com/@herbcaudill/lessons-from-6-software-rewrite-stories-635e4c8f7c22
  328. 4 Steps to Persuade a Product Owner to Prioritize Refactoring: https://www.mountaingoatsoftware.com/blog/4-steps-to-persuade-a-product-owner-to-prioritize-refactoring
  329. How to refactor: https://refactoring.guru/refactoring/how-to
  330. Refactoring - Improving the Design of Existing Code (BOOK): https://www.goodreads.com/book/show/44936.Refactoring | WEBSITE
  331. An Agile Approach to a Legacy System: http://cdn.pols.co.uk/papers/agile-approach-to-legacy-systems.pdf
  332. Strangler Applications: https://paulhammant.com/2013/07/14/legacy-application-strangulation-case-studies/
  333. Metaphor of the "Strangler Fig" tree (that seeds in high-up branches and eventually works its way down to replace original "host" tree aka. app):
  334. Three Strategies for Fitting Refactoring into Your Sprints: https://www.mountaingoatsoftware.com/blog/three-strategies-for-fitting-refactoring-into-your-sprints
  335. Why “I Do High Quality Work” Is Both Good Policy and Terrible Positioning: https://daedtech.com/why-i-do-high-quality-work-is-both-good-policy-and-terrible-positioning/
  336. Satisfiying vs Maximizing: https://blog.asmartbear.com/maximizing.html
  337. wikipedia: Software rot
  338. Brand new legacy code is developed every day: https://www.markkukero.com/2018-05-brand-new-legacy-code-is-developed-every-day/
  339. "Legacy Code is Fear" (PRESENTATION) @Swanseacon 2015-09-08: https://www.slideshare.net/adibolb/legacy-code-is-fear-swanseacon-08-09-2015
  340. Monolith to Microservices Using the Strangler Pattern: https://dzone.com/articles/monolith-to-microservices-using-the-strangler-patt
  341. Microsoft Azure -- Cloud architecutre guide - "Strangler Fig" pattern: https://docs.microsoft.com/en-us/azure/architecture/patterns/strangler-fig
  342. Refactoring Legacy Code with the Strangler Fig Pattern: https://shopify.engineering/refactoring-legacy-code-strangler-fig-pattern
  343. The Urge to Strangle: https://www.leadingagile.com/2018/10/the-urge-to-stranglethe-strangler-pattern/
  344. The Strangler Fig Migration Pattern: https://dianadarie.medium.com/the-strangler-fig-migration-pattern-2e20a7350511
  345. Apply the Strangler Application pattern to microservices applications: https://developer.ibm.com/depmodels/microservices/articles/cl-strangler-application-pattern-microservices-apps-trs/
  346. Effective JavaScript Codemods: https://medium.com/@cpojer/effective-javascript-codemods-5a6686bb46fb (tool assisted code modifications can help evolve complex systems incrementally and aid in maintaining the health of large codebases)
  347. Christoph Nakazawa -- Evolving Complex Systems Incrementally: https://www.youtube.com/watch?v=d0pOgY8__JM
  348. Codemod - Refactoring Code Programmatically - Interview with Ramana Venkata: https://survivejs.com/blog/codemod-interview/
  349. Building The Facebook News Feed With Relay: https://reactjs.org/blog/2015/03/19/building-the-facebook-news-feed-with-relay.html
  350. Refactor Code in Your Lunch Break - Getting Started with Codemods: https://www.sitepoint.com/getting-started-with-codemods/
  351. Higher-order Components in React: https://gist.github.com/sebmarkbage/ef0bf1f338a7182b6775 (1st known example HoC for React, similar to - if not just an implementation of - the Decorator Pattern)
  352. React Higher Order Components in depth: https://medium.com/@franleplant/react-higher-order-components-in-depth-cf9032ee6c3e
  353. A gentle Introduction to React's Higher Order Components: https://www.robinwieruch.de/gentle-introduction-higher-order-components/
  354. The state of test automation -- 7 key trends to watch: https://techbeacon.com/state-test-automation-7-key-trends-watch
  355. A JSON configuration file that can be used to spawn a webdriver node: https://gist.github.com/krmahadevan/1106418
  356. Using Selenium with Headless Firefox (on Windows): https://intoli.com/blog/running-selenium-with-headless-firefox/
  357. Setting up Grid2 and working with it!: https://rationaleemotions.wordpress.com/2012/01/23/setting-up-grid2-and-working-with-it/
  358. Selenium Jenkins - How to Do it Yourself and Sauce Labs Advantage: https://saucelabs.com/resources/articles/selenium-jenkins-how-to-do-it-yourself-and-sauce-labs-advantage#option3
  359. Headless Execution of Selenium Tests in Jenkins: https://www.blazemeter.com/blog/headless-execution-selenium-tests-jenkins
  360. Proposal #1 -- Add Switch to Shadow DOM command (WebDriver): https://github.com/w3c/webdriver/pull/1320
  361. Proposal #2 -- Shadow DOM support in WebDriver: https://github.com/w3c/webdriver/issues/350
  362. How to stop using (or at least relying on) console.log() and start using your browser’s Debugger: https://medium.com/datadriveninvestor/stopping-using-console-log-and-start-using-your-browsers-debugger-62bc893d93ff
  363. Colorful Console Message: https://medium.com/@samanthaming/colorful-console-message-2e8203786838
  364. Debugging Spring Applications: https://www.baeldung.com/spring-debugging
  365. Top 10 Java Debugging Tips: https://stackify.com/java-debugging-tips/
  366. Test developer candidates with Codility: http://www.techrepublic.com/blog/programming-and-development/test-developer-candidates-with-codility/5999
  367. Integrating Selenium with Jenkins and BrowserStack: https://www.browserstack.com/automate/jenkins
  368. BitBucket -- BrowserStack CI guide: https://www.browserstack.com/automate/continuous-integration#Bitbucket
  369. BitBucket BitBucket Pipelines example: https://bitbucket.org/browserstack/bitbucket-pipelines/src/master/
  370. Debugging Selenium tests on BrowserStack: https://www.browserstack.com/automate/debugging
  371. Test Automation frameworks: https://smartbear.com/learn/automated-testing/test-automation-frameworks/
  372. How to Wreck Your UI Test Automation Project - A Cheat Sheet: http://www.inflectra.com/Ideas/Entry/how-to-wreck-your-ui-test-automation-project-702.aspx
  373. How to Develop an Automated Testing Strategy: https://testlio.com/blog/how-to-develop-an-automated-testing-strategy/
  374. How Do You Reason About Automated Testing ROI?: https://www.testim.io/blog/automated-testing-roi/
  375. 6 reasons to co-locate your app and automation code: https://techbeacon.com/app-dev-testing/6-reasons-co-locate-your-app-automation-code
  376. Could not find adb.exe - after upgrade to Android SDK 2.3: https://stackoverflow.com/questions/4375175/could-not-find-adb-exe-after-upgrade-to-android-sdk-2-3/4375439
  377. Appium Studio tutorial: https://www.toolsqa.com/appium-studio-tutorial/
  378. Appium Studio Tutorial -- All You Need To Know: https://www.edureka.co/blog/appium-studio-tutorial/
  379. How to Install Appium Server and Node on Windows through Command Line: https://www.testbytes.net/blog/how-to-install-appium-server-and-node-on-windows-through-command-line/
  380. First time Appium configuration and basic test tutorial (PLAYLIST): https://www.youtube.com/playlist?list=PLhW3qG5bs-L8npSSZD6aWdYFQ96OEduhk
  381. Appium tutorials: https://www.toolsqa.com/mobile-automation/appium/appium-tutorial/
  382. Mobile Testing - Appium Framework: https://www.tutorialspoint.com/mobile_testing/mobile_testing_appium_framework.htm
  383. Complete Ultimate Appium tutorial for beginners: https://learn-automation.com/appium-tutorial-for-beginners/
  384. Step-by-Step Appium tutorial for beginners: http://www.automationtestinghub.com/appium-tutorial/
  385. Tutorial - Automated Testing on iOS (with Appium, Test NG and Java on Mac): http://www.automationtestinghub.com/3-ways-to-start-appium-server-from-java/
  386. Appium basics overview: https://www.edureka.co/blog/appium-tutorial/
  387. An Introduction to Appium (in Python): https://code.tutsplus.com/tutorials/an-introduction-to-appium--cms-23861 | SRC
  388. Automating Mobile Apps with Appium & RSpec (in Ruby): https://medium.com/@javondavis/automating-mobile-apps-with-appium-and-rspec-540fd49758e1
  389. How to get the device name, version and Android app details: https://www.softpost.org/android-automation-with-appium/how-to-get-the-device-name-version-and-android-app-details/
  390. How To Find ".apk" File Package Name And Launcher Activity Name: http://www.software-testing-tutorials-automation.com/2015/10/how-to-find-apk-file-package-name-and.html
  391. Appium setting up with Jenkins CI Guidelines: https://discuss.appium.io/t/appium-setting-up-with-jenkins-ci-guidelines/9877
  392. Hello Appium, Part 2 - Writing Your First Android Test: https://applitools.com/blog/how-to-write-android-test-appium/ | SRC
  393. How to find Elements in Appium using UiAutomatorViewer tool?: https://www.inviul.com/find-elements-uiautomatoviewer/
  394. UI Testing with Espresso: https://github.com/codepath/android_guides/wiki/UI-Testing-with-Espresso
  395. Appium server arguments: https://github.com/appium/appium/blob/master/docs/en/writing-running-appium/server-args.md
  396. Appium XCUITest Driver Real Device Setup: http://appium.io/docs/en/drivers/ios-xcuitest-real-devices/
  397. Appium Test on Real IOS Device: https://www.toolsqa.com/mobile-automation/appium/appium-test-on-real-ios-device/
  398. Locator Strategies for detecting a Mobile object: https://docs.katalon.com/katalon-studio/docs/locators_object_identification.html#locator-strategies-for-detecting-a-mobile-object
  399. Android Testing -- UIAutomator vs Espresso: https://stackoverflow.com/questions/31076228/android-testing-uiautomator-vs-espresso
  400. UIAutomation Vs XCUITest: https://journeyofquality.wordpress.com/category/uiautomation-vs-xcuitest/
  401. Espresso Driver for Android: https://appium.io/docs/en/drivers/android-espresso/
  402. BrowserStack -- App Automate - Appium + JUnit: https://www.browserstack.com/app-automate/appium-junit
  403. Eclipse No tests found using JUnit 5 caused by NoClassDefFoundError for LauncherFactory: https://stackoverflow.com/questions/46717693/eclipse-no-tests-found-using-junit-5-caused-by-noclassdeffounderror-for-launcher
  404. How to test drive a main method: https://rkennke.wordpress.com/2012/04/12/how-to-test-drive-a-main-method/
  405. Build & Run Xcode Project: https://www.toolsqa.com/mobile-automation/appium/build-run-xcode-project/
  406. APPIUM Tutorial for Android & iOS Mobile Apps Testing: https://www.guru99.com/introduction-to-appium.html
  407. From Zero To Appium -- A How-To Guide For Configuring Appium With Android: https://www.smashingmagazine.com/2016/04/from-zero-to-appium-guide-configuring-appium-android/
  408. How to run Appium Parallel Execution using TestNG: https://www.toolsqa.com/mobile-automation/appium/appium-parallel-execution-using-testng/
  409. Automated Testing on Android (with Appium, TestNG and Java on Mac): https://medium.com/2359media/tutorial-automated-testing-on-android-and-ios-with-appium-testng-and-java-on-mac-210119edf323
  410. Exception with "com.google.common.collect.ImmutableSortedSet.toImmutableSortedSet" with Android + Appium: https://stackoverflow.com/questions/47652619/com-google-common-collect-immutablesortedset-toimmutablesortedset
  411. How can I use selenium or appium to automate chrome browser on android?: https://stackoverflow.com/questions/21419914/how-can-i-use-selenium-or-appium-to-automate-chrome-browser-on-android
  412. How Do I Open a browser on Emulator using Robot Framework and Appium: https://stackoverflow.com/questions/48139107/how-do-i-open-a-browser-on-emulator-using-robot-framework-and-appium
  413. Appium docs -- How To Troubleshoot Activities Startup: https://github.com/appium/appium/blob/master/docs/en/writing-running-appium/android/activity-startup.md
  414. Appium docs -- Automating mobile web apps: https://appium.io/docs/en/writing-running-appium/web/mobile-web/
  415. Espresso vs UiAutomator2 with Appium: https://journeyofquality.wordpress.com/2018/05/29/espresso-vs-uiautomator2-in-appium/ (good FluentWait examples)
  416. How can I use Selenium or Appium to automate chrome browser on android?: https://stackoverflow.com/questions/21419914/how-can-i-use-selenium-or-appium-to-automate-chrome-browser-on-android (ensure write access to "/data/local" using command: adb shell su -c chmod 777 /data/local)
  417. How to submit searching field with android keyboard?: https://stackoverflow.com/questions/26053663/how-to-submit-searching-field-with-android-keyboard
  418. How to dismiss the keyboard in appium using Java?: https://stackoverflow.com/questions/23220067/how-to-dismiss-the-keyboard-in-appium-using-java
  419. Appium android button click not working?: https://stackoverflow.com/questions/38239351/appium-android-button-click-not-working
  420. Appium -- Problem with button element: https://discuss.appium.io/t/problem-with-button-element/1376
  421. How to solve the org.openqa.selenium.NoSuchElementException: https://stackoverflow.com/questions/4601296/how-to-solve-the-org-openqa-selenium-nosuchelementexception
  422. Appium -- “An element could not be located on the page using the given search parameters” error: https://stackoverflow.com/questions/25180309/appium-an-element-could-not-be-located-on-the-page-using-the-given-search-para
  423. How to set up a basic working - Appium test environment: https://blogs.technet.microsoft.com/antino/2014/09/22/how-to-set-up-a-basic-working-appium-test-environment/
  424. org.openqa.selenium.NoSuchElementException: no such element: https://stackoverflow.com/questions/20046783/org-openqa-selenium-nosuchelementexception-no-such-element
  425. Appium Mobile Actions -- Swipe | Tap | MultiTouch | Press: https://www.swtestacademy.com/appium-mobile-actions-swipe-tap-press/
  426. Appium Parallel Testing -- Parallel Mobile Device Farm: https://www.swtestacademy.com/appium-parallel-tests/
  427. iOS Testing Using Appium and JAVA | iOS Mobile Test Automation: https://www.swtestacademy.com/ios-testing-appium-java/
  428. How to Test Toast Messages using Appium?: http://www.qaautomated.com/2017/12/how-to-test-toast-messages-using-appium.html
  429. UI Test Automation - Speed Up Mobile App UI Testing with Appium: https://www.appcoda.com/automated-ui-testing-appium/
  430. How to Automate Gesture Testing with Appium: https://applitools.com/blog/how-to-automate-gesture-testing-appium/
  431. How to build your own "Appium plugin": https://applitools.com/blog/how-to-build-your-own-appium-plugin/
  432. Hello Appium! Part 3 - Writing Your First iOS Test: https://applitools.com/blog/how-to-write-appium-ios-test/
  433. wikipedia: HP Quality Center
  434. Intro to Quality Center: https://www.guru99.com/hp-alm-introduction.html
  435. Real Time HP ALM (Quality Center) Live Project https://www.guru99.com/live: -interactive-exercise-hp-alm.html
  436. HP Quality Center (QC) Tutorial: https://www.tutorialspoint.com/qc/index.htm
  437. Basics of HP Quality Center: https://www.youtube.com/watch?v=9pxDS35D19Q
  438. HP Quality Center practical demo (older version): https://www.youtube.com/watch?v=8QiTvksJies
  439. HP Software Demo -- Quality Center with Business Process Modeling: https://www.youtube.com/watch?v=KYUq2Axejjk
  440. HP QC/ ALM 12.5 Overview Session1 (Class Recording): https://www.youtube.com/watch?v=BZ78yyATYXE
  441. HP ALM Quality Center Tool Tutorial (7 In-depth Tutorials): http://www.softwaretestinghelp.com/learn-hp-quality-center-qc-in-4-days/
  442. SpiraTest: http://www.inflectra.com/SpiraTest/
  443. The Inflectra Training Pyramid - Test certifications: http://www.inflectra.com/Ideas/Entry/434.aspx
  444. ISP-100 -- Spira Fundamentals Certification: http://www.inflectra.com/Support/KnowledgeBase/KB237.aspx
  445. SpiraTest 5 Revised Designs for Test Execution: https://www.inflectra.com/Ideas/Entry/343.aspx
  446. Troubleshooting the Data-Synchronization between SpiraTest and Jira: https://www.inflectra.com/Support/KnowledgeBase/KB265.aspx
  447. Integrating SpiraTest, SpiraPlan or SpiraTeam Hosted with JIRA On-Demand: https://www.inflectra.com/Support/KnowledgeBase/KB53.aspx
  448. Spira DEMO -- SOAP Web Services: http://api.inflectra.com/Spira/Services/v4_0/ImportExport.svc
  449. How to access Spira v4.x SOAP web services using Java: http://www.inflectra.com/Support/KnowledgeBase/KB49.aspx
  450. Spira DEMO - REST:http://api.inflectra.com/Spira/Services/v4_0/RestService.aspx
  451. Not able to access WSDL on test instance: https://www.inflectra.com/Support/Forum/spirateam/issues-questions/530.aspx (config changes to set "httpGetEnabled" to "false" and "httpsGetEnabled" to "true" in order to run SpiraTest/Team Web Services on HTTPS rather than HTTP)
  452. JUnit Integration with Hosted version: https://www.inflectra.com/Support/Forum/integrations/unit-testing/704.aspx (trouble with FW/Proxies)
  453. Import Test Runs from JUnit Formatted XML: https://www.inflectra.com/Support/Forum/integrations/importers/287.aspx
  454. Spiratest and JUnit Automated Tests: https://www.inflectra.com/Support/Forum/spiratest/best-practices/823.aspx
  455. Running Selenium WebDriver Scripts using RemoteLaunch and JUnit: http://www.inflectra.com/Support/KnowledgeBase/KB140.aspx
  456. Selenium RC not passing the test results to Spira: https://www.inflectra.com/Support/Forum/spiratest/issues-questions/922.aspx
  457. How to run a cross-browser test on a mobile device?: https://www.inflectra.com/Support/KnowledgeBase/KB278.aspx (only available when using Inflectra Rapise with Cloud-based Appium Mobile Test tool)
  458. Running Selenium WebDriver Scripts using RemoteLaunch and JUnit: http://www.inflectra.com/Support/KnowledgeBase/KB140.aspx
  459. Running Selenium WebDriver Scripts using RemoteLaunch and TestNG: https://www.inflectra.com/Support/KnowledgeBase/KB148.aspx (with exact comman-line run command example)
  460. Running Selenium IDE Scripts using RemoteLaunch: http://www.inflectra.com/Support/KnowledgeBase/KB108.aspx
  461. Does the SpiraTest JUnit integration library support parameterized tests?: https://www.inflectra.com/Support/Forum/spiratest/issues-questions/1213.aspx (not without custom modifications)
  462. Jenkins plugin: https://www.inflectra.com/Support/Forum/spirateam/issues-questions/1014.aspx (Jenkins integration to SpiraTest/Team requires SpiraTest/Team v4.0+)
  463. SpiraTest Jenkins Integration: https://www.inflectra.com/Support/Forum/spiratest/issues-questions/656.aspx
  464. Setting Up a TestOps Environment Using Selenium WebDriver and JavaScript.: https://www.inflectra.com/Ideas/Whitepaper/Setting-Up-a-TestOps-Environment-Using-Selenium-WebDriver-and-JavaScript.aspx
  465. How Do You Pronounce Spira and Rapise?: http://www.inflectra.com/Ideas/Entry/how-do-you-pronounce-spira-and-rapise-720.aspx
  466. Hindsight lessons about API testing: https://mrslavchev.com/2018/08/06/hindsight-lessons-about-api-testing/
  467. 10 Tips for the SoapUI Beginner: http://www.soapui.org/getting-started/10-tips-for-the-soapui-beginner.html
  468. SoapUI Command Line Execution: https://testarenablog.wordpress.com/2016/08/13/soapui-command-line-execution/
  469. Adding HTTP Authentication to SoapUI testrunner.sh test cases: https://www.igorkromin.net/index.php/2016/09/01/adding-http-authentication-to-soapui-testrunnersh-test-cases/
  470. Running Functional Tests: https://www.soapui.org/test-automation/running-functional-tests.html
  471. Integrating SoapUI with JUnit: https://www.soapui.org/test-automation/junit/junit-integration.html
  472. JUnit-Style HTML Reports : https://www.soapui.org/reporting/generating-html-reports.html
  473. JUnit report output in TEST-*.xml format: https://community.smartbear.com/t5/SoapUI-Open-Source/JUnit-report-output-in-TEST-xml-format/td-p/6513
  474. Data Export (after CI runs): https://www.soapui.org/reporting/exporting-data.html
  475. testrunner.sh, groovy scripts in scripts dir not found: https://community.smartbear.com/t5/SoapUI-Pro/Res-testrunner-sh-groovy-scripts-in-scripts-dir-not-found/td-p/37562
  476. SoapUI -- testrunner.sh - takes only one .xml file as input?: http://stackoverflow.com/questions/10937407/soapui-testrunner-sh-takes-only-one-xml-file-as-input
  477. TestRunner – soapUI project execution from command line: https://learnsoapui.wordpress.com/2011/05/17/testrunner-soapui-project-execution-from-command-line/
  478. execute soapui project with maven and Jenkins: https://sqa.stackexchange.com/questions/27141/execute-soapui-project-with-maven-and-jenkins/27143
  479. Automated REST web services using SOAPUI: https://taquimon.wordpress.com/2015/03/02/automated-rest-web-services-using-soapui/
  480. How to integrate SoapUI with Jenkins / Hudson?: https://stackoverflow.com/a/6656838
  481. How to install SoapUI using command line on linux: https://community.smartbear.com/t5/SoapUI-Open-Source/How-to-install-SoapUI-using-command-line-on-linux/td-p/21188 (HINT: use the -c run-time parameter when running the installer)
  482. jQuery, SOAP, Ajax and updated UI for WS Testing workflow: http://intaliotempo.wordpress.com/2009/04/03/jquery-soap-ajax-and-updated-ui-for-workflow/
  483. API Testing With Cucumber (BDD) based jUnit tests - Configuration Tips: https://dzone.com/articles/api-testing-with-cucumber-bdd-configuration-tips
  484. SoapUI 101 -- Beginner’s Guide to API Testing: https://smartbear.com/SmartBear/media/ebooks/SoapUI-101-Beginners-Guide-to-API-Testing.pdf
  485. SoapUI resources: https://www.soapui.org/resources.html
  486. SoapUI in-depth overview: http://www.testmanagement.com/blog/2016/03/module-4-executing-our-rest-api-tests
  487. Accelerating Your Delivery Pipeline with ReadyAPI & Jenkins: https://smartbear.com/resources/webinars/accelerate-delivery-pipeline-jenkins/
  488. Adding More APIs to Existing Projects: https://support.smartbear.com/readyapi/docs/projects/add.html
  489. Updating APIs: https://support.smartbear.com/readyapi/docs/projects/update/update.html
  490. SOAPUI - UPLOADING A FILE: https://community.smartbear.com/t5/SoapUI-Open-Source/SOAPUI-UPLOADING-A-FILE/td-p/4811
  491. How to test FileUpload using SOAP UI: https://stackoverflow.com/questions/4051816/how-to-test-fileupload-using-soap-ui
  492. SOAP Attachments and Files: https://www.soapui.org/docs/soap-and-wsdl/attachments.html
  493. Working with HTTP multipart requests in soapUI: http://charithaka.blogspot.com/2013/07/working-with-http-multipart-requests-in.html
  494. Update Content-Type in Attachment before submissionSolved: https://community.smartbear.com/t5/SoapUI-Pro/Update-Content-Type-in-Attachment-before-submission/td-p/41128
  495. How add groovy script in Soap UI to automatically update definitions?: https://stackoverflow.com/questions/23777952/how-add-groovy-script-in-soap-ui-to-automatically-update-definitions
  496. SoapUI -- Export (an imported API definintion) in the OpenAPI or Swagger format: https://support.smartbear.com/readyapi/docs/apis/export.html#export-in-the-openapi-or-swagger-format
  497. HTTP Recording Overview: https://www.soapui.org/http-recording/http-recording.html
  498. How to Write Basic Groovy Script in SoapUI (OSS version): https://www.softwaretestinghelp.com/soapui-tutorial-6-write-groovy-script-in-soapui/
  499. Scripting and the Script Library: https://www.soapui.org/scripting-properties/scripting-and-the-script-library.html
  500. Deploying Mock Services as WAR Files: www.soapui.org/soap-mocking/deploying-mock-services-as-war-files.html
  501. Testing Quarkus Web Applications - Writing Clean Component Tests: https://www.infoq.com/articles/testing-quarkus-integration-containers/ | SRC
  502. SoapUI/LoadUI - Running Tests on Locked Computers: https://support.smartbear.com/viewarticle/74665/
  503. Using SoapUI with LoadUI from command-line: https://www.soapui.org/load-testing/command-line-execution.html
  504. Testing Your JavaScript with Jasmine: http://net.tutsplus.com/tutorials/javascript-ajax/testing-your-javascript-with-jasmine/
  505. Unit test JavaScript applications with Jasmine: http://www.adobe.com/devnet/html5/articles/unit-test-javascript-applications-with-jasmine.html
  506. Jasmine and jQuery: http://a-developer-life.blogspot.ca/2011/05/jasmine-part-1-unit-testing-javascript.html
  507. Kent Dodds -- Write tests, Not too many, Mostly integration: https://kentcdodds.com/blog/write-tests
  508. Unit Test React Components: https://www.codeblocq.com/2016/03/Unit-Test-React-Components/
  509. Check out these beginner-friendly unit testing patterns for React: https://medium.freecodecamp.org/unit-testing-patterns-for-react-720a8275873b
  510. What Is React Testing Library?: https://www.youtube.com/watch?v=JKOwJUM4_RM
  511. Unit-testing React code: https://medium.com/@baphemot/unite-testing-react-code-88651801f16b
  512. How to -- Unit Testing React Components: https://medium.com/writing-objects/how-to-unit-testing-react-components-3cc4e88327ae
  513. Selenium Project WebDriver Test Results: https://webdriver-herald.herokuapp.com
  514. What is the best book to learn Selenium?: https://www.quora.com/What-is-the-best-book-to-learn-Selenium
  515. in28minutes -- Learn Automation Testing with Java and Selenium (E-LEARNING COURSE): https://www.udemy.com/automation-testing-with-selenium-and-java-for-beginners/learn/v4/t/lecture/10089460?start=0 | SRC
  516. Running Automated Selenium Tests from Jenkins on Linux: https://stgconsulting.com/running-automated-selenium-tests-from-jenkins-on-linux/
  517. Tutorial -- How to use Headless Firefox for Scraping in Linux: http://scraping.pro/use-headless-firefox-scraping-linux/
  518. Running headless Firefox WebDriver on Jenkins (Windows OS): https://stackoverflow.com/questions/47532164/running-headless-firefox-webdriver-on-jenkins-windows-os
  519. How to run a headless Chrome browser in Selenium WebDriver: https://itnext.io/how-to-run-a-headless-chrome-browser-in-selenium-webdriver-c5521bc12bf0
  520. Selenium2 MindMap of concepts: https://www.mindmeister.com/334652100/selenium-2-commands?fullscreen=1
  521. flash-selenium example: http://www.developerfusion.com/project/18930/flashselenium/ (APPLICATION LINK DEAD: an old color chooser example using "colors.html" & "colors.swf" files)
  522. More recent example of testing the Flash ColorChooser in Selenium: https://qaguru.wordpress.com/2011/05/24/selenium-and-flash-testing-flash-application-using-selenium/
  523. Testing Flash with Selenium (Flash – JavaScript communication): http://toolsqa.com/selenium-webdriver/testing-flash-selenium-flash-javascript-communication/ (selenium sample in C#)
  524. Writing and running functional tests for Flash with Selenium RC: https://www.adobe.com/devnet/flash/articles/flash_selenium.html
  525. Writing and running functional tests for Flash with Selenium RC: https://qaguru.wordpress.com/2011/05/24/selenium-and-flash-testing-flash-application-using-selenium/
  526. Enable Flash player on Chrome 62 while running selenium test: https://sqa.stackexchange.com/questions/30312/enable-flash-player-on-chrome-62-while-running-selenium-test (apart from setting Capabilities via WebDriver API, requires running Chrome with "--allow-outdated-plugins" flag as of Chrome 62+)
  527. Selenium-Flex API - Automation for Adobe Flex applications: http://code.google.com/p/sfapi/
  528. Flex acceptance testing and continuous integration: http://www.blackpepper.co.uk/black-pepper-blog/Flex-acceptance-testing-and-continuous-integration.html
  529. Introduction To Creating Automated Tests by Using Selenium IDE and Python: https://desmart.com/blog/introduction-to-creating-automated-tests-by-using-selenium-ide-and-python
  530. How to use Selenium with Python: https://stackoverflow.com/questions/17540971/how-to-use-selenium-with-python
  531. How to Use Selenium with Python -- Complete Tutorial : https://www.guru99.com/selenium-python.html
  532. Running Selenium tests under py.test convention with docker support: https://github.com/eliranshani/selenium-docker-allure
  533. How to execute a Selenium test in Java: http://stackoverflow.com/questions/18492668/how-to-execute-a-selenium-test-in-java
  534. Selenium Test Automation Success Reasons and Best Practices: http://dzone.com/articles/selenium-test-automation-success-reasons-amp-best
  535. FF cross-platform Linux installation scripts example: https://gist.github.com/cgoldberg/4097efbfeb40adf698a7d05e75e0ff51
  536. Run Selenium WebDriver test on a Linux server: https://stackoverflow.com/questions/30051268/run-selenium-webdriver-test-on-a-linux-server
  537. Install Chrome, ChromeDriver and Selenium on Ubuntu 16.04: https://gist.github.com/ziadoz/3e8ab7e944d02fe872c3454d17af31a5
  538. Just Say No to More End-to-End Tests: https://testing.googleblog.com/2015/04/just-say-no-to-more-end-to-end-tests.html
  539. Selenium - How to use x and y coordinate position: http://stackoverflow.com/questions/6448457/selenium-how-to-use-x-and-y-coordinate-position
  540. Writing XPath selectors for Selenium tests: http://hedleyproctor.com/2011/05/tutorial-writing-xpath-selectors-for-selenium-tests/
  541. Automating Selenium testing with TestNG, Ant and CruiseControl: http://hedleyproctor.com/2011/07/automating-selenium-testing-with-testng-ant-and-cruisecontrol/
  542. How to verify title of any web page in Selenium WebDriver?: http://www.inviul.com/verify-title-web-page-selenium/
  543. Difference between driver.close() and driver.quit() in Selenium WebDriver: https://artoftesting.com/automationTesting/difference-between-driver-close-and-driver-quit-command-in-selenium-webdriver.html
  544. Tips for running Selenium Server: https://testersworld.wordpress.com/about/selenium-rcremote-control/
  545. Selenium RC example: http://www.tutorialspoint.com/selenium/selenium_rc.htm (Selenium 1.x used the Remote Control or RC API, whereas Selenium 2+ uses WebDriver APIs specific to the Browser being tested with)
  546. Selenium 4 Release Candidate is here!: https://applitools.com/blog/selenium-4-release-candidate/
  547. How To Upgrade to Selenium 4: https://saucelabs.com/resources/articles/how-to-upgrade-to-selenium-4
  548. JUnit 5 Jupiter API: https://developer.ibm.com/languages/java/tutorials/j-introducing-junit5-part1-jupiter-api/
  549. Mastering Selenium Testing - JUnit Asserts With Examples: https://www.lambdatest.com/blog/junit-assertions-example-for-selenium-testing/
  550. Selenium-Jupiter: https://github.com/bonigarcia/selenium-jupiter (JUnit5 integration plugin)
  551. Specifying the Firefox Profile: http://www.seleniumhq.org/docs/05_selenium_rc.jsp#specifying-the-firefox-profile (Firefox will not run two instances simultaneously unless you specify a separate profile for each instance)
  552. Selenium -- Could not start Selenium session - Failed to start new browser session: Error while launching browser: https://stackoverflow.com/questions/1414934/selenium-could-not-start-selenium-session-failed-to-start-new-browser-session
  553. Running Java JUnit tests that depend on WebDriver on Windows command line?: https://stackoverflow.com/questions/39226529/running-java-junit-tests-that-depend-on-webdriver-on-windows-command-line
  554. Selenium IDE and Web Scraping: http://scraping.pro/selenium-ide-and-web-scraping/
  555. What is jUnit – testing framework (and how is it used with Selenium): https://seleniumonlinetrainingexpert.wordpress.com/2012/11/21/what-is-junit-testing-framework/
  556. Selenium - Quick Guide: https://www.tutorialspoint.com/selenium/selenium_quick_guide.htm
  557. Can Selenium IDE/Builder run same test case on many pages?: https://stackoverflow.com/questions/30493966/can-selenium-ide-builder-run-same-test-case-on-many-pages
  558. Comparison of Selenium IDE, Remote Control (RC) & WebDriver – Key Differences : http://www.slideshare.net/videotuition/comparison-of-selenium-ide-remote-control-rc-web-driver-key-differences
  559. WebDriver -- Can I inject a jQuery script for a page that isn't using jQuery?: https://sqa.stackexchange.com/questions/2921/webdriver-can-i-inject-a-jquery-script-for-a-page-that-isnt-using-jquery
  560. Using Selenium scripts with JMeter for load testing: https://sqa.stackexchange.com/questions/3313/using-selenium-scripts-with-jmeter-for-load-testing
  561. How to use a already opened firefox for testing in Selenium: https://stackoverflow.com/questions/19690157/how-to-use-a-already-opened-firefox-for-testing-in-selenium
  562. Selenium Webdriver -- How do I run multiple tests, one after the other in the same window?: https://stackoverflow.com/questions/27388940/selenium-webdriver-how-do-i-run-multiple-tests-one-after-the-other-in-the-same
  563. Sauce Labs: https://saucelabs.com/ | DOCS
  564. Loadable Component Pattern for better Page Object Model (POM) Architecture: https://www.swtestacademy.com/loadable-component-pattern/ | SRC
  565. Page Object Model with JAVA Generics: https://www.swtestacademy.com/page-object-model-java-generics/
  566. Write Dockerized End-to-End Tests with JUnit 5 and Selenium WebDriver: https://blog.testproject.io/2019/03/25/write-dockerized-end-to-end-tests-with-junit-5-selenium/
  567. Selenium-Jupiter -- JUnit 5 extension for Selenium and Appium: https://bonigarcia.github.io/selenium-jupiter/ | SRC
  568. Selenium WebDriver usage in JUnit4 .vs. JUnit5: https://www.blazemeter.com/blog/how-to-run-a-selenium-test-with-junit/ | SRC - 4.x | SRC - 5.x
  569. How to Run a Selenium Test with TestNG: https://www.blazemeter.com/blog/how-to-run-a-selenium-test-with-testng/
  570. Selenium advanced topics -- Parallel Tests Using Selenium Grid and JUnit: https://www.swtestacademy.com/selenium-parallel-tests-grid-junit/
  571. Setting up Selenium with Eclipse: http://selftechy.com/2011/05/31/setting-up-selenium-with-eclipse
  572. Selenium – Creating XML Reports: http://selftechy.com/2011/07/07/selenium-creating-xml-reports
  573. Selenium – Use Ant to Generate (jUnit-style) HTML Reports: http://selftechy.com/2011/06/29/selenium-use-ant-to-generate-html-reports
  574. Selenium – Use Assertions to Verify the Test Output: http://selftechy.com/2011/07/10/selenium-use-assertions-to-verify-the-test-output
  575. I want to run Selenium test case file from command line: https://stackoverflow.com/questions/1231975/i-want-to-run-selenium-test-case-file-from-command-line#1234439
  576. Navigate to previous page using Selenium: https://sqa.stackexchange.com/questions/8737/navigate-to-previous-page-using-selenium
  577. How do I launch the Selenium IDE from the command line with a specific test case loaded?: https://stackoverflow.com/questions/1144744/how-do-i-launch-the-selenium-ide-from-the-command-line-with-a-specific-test-case
  578. Selenium IDE native format (Selenese & .side) interpreter: https://github.com/vmi/selenese-runner-java
  579. Selenium Testing with Google Chrome - Success!: https://groups.google.com/forum/#!topic/selenium-users/cit1kcRNQho (-trustAllSSLCertificates will prevent Chrome from popping up that red warning screen that the certificate is self-signed)
  580. Awesome Selenium links: https://github.com/christian-bromann/awesome-selenium
  581. RocketPoweredJetPants -- Selenium/TestAutomation-focused blog: http://blog.rocketpoweredjetpants.com/
  582. How to retrieve OS, Browser and Screen Resolution of the Machine performing my Test (Suite)?: https://forum.katalon.com/discussion/6853/how-to-retrieve-os-browser-and-screen-resolution-of-the-machine-performing-my-test-suite
  583. How to get System OS, Browser and Version using Java and Selenium WebDriver: https://mashtips.com/get-system-os-browser-version-java-selenium-webdriver/
  584. How To Get Browser And OS Details On Run-Time In Selenium WebDriver: http://www.software-testing-tutorials-automation.com/2016/05/how-to-get-browser-and-os-details-on.html
  585. How to find the operating system version using JavaScript?: https://stackoverflow.com/questions/9514179/how-to-find-the-operating-system-version-using-javascript#18706818
  586. Selenium 101 -- Running Your Test Against Two Browsers at Once: https://crossbrowsertesting.com/blog/how-to/run-test-multiple-browsers-parallel-selenium/
  587. WebDriver -- Advanced Usage: https://docs.seleniumhq.org/docs/04_webdriver_advanced.jsp#using-a-proxy
  588. Selenium_Webdriver -- Proxy setting: https://stackoverflow.com/questions/12279723/selenium-webdriver-proxy-setting
  589. How To Set Proxy Settings In Selenium WebDriver Test: http://www.software-testing-tutorials-automation.com/2015/03/how-to-set-proxy-settings-in-selenium.html
  590. How can i set proxy using selenium webdriver with browser HtmlunitDriver for Java?: https://stackoverflow.com/questions/31353557/how-can-i-set-proxy-using-selenium-webdriver-with-browser-htmlunitdriver-for-jav
  591. How do I set a proxy for firefox using Selenium webdriver with Java?: https://stackoverflow.com/questions/45810476/how-do-i-set-a-proxy-for-firefox-using-selenium-webdriver-with-java
  592. HTMLUnit -- Tons of obsolete content and can't create objects warnings on getPage() then fails with Exception invoking setOuterHTML on getByXPath(): https://stackoverflow.com/questions/17436855/htmlunit-tons-of-obsolete-content-and-cant-create-objects-warnings-on-getpage
  593. Why am I getting “The type is deprecated” as an error in Selenium?: https://stackoverflow.com/questions/27661196/why-am-i-getting-the-type-is-deprecated-as-an-error-in-selenium
  594. WebDriver setup: https://developer.mozilla.org/en-US/docs/Mozilla/QA/Marionette/WebDriver
  595. webdriver.gecko.driver system property: https://github.com/mozilla/geckodriver/issues/177
  596. Driver executable must be set by the webdriver.ie.driver system property: http://stackoverflow.com/questions/10995314/driver-executable-must-be-set-by-the-webdriver-ie-driver-system-property
  597. Make it possible to choose Geckodriver for Firefox -- Issue #2600: https://github.com/SeleniumHQ/selenium/issues/2600
  598. How to use Firefox in Selenium using geckodriver in Selenium 3: http://learn-automation.com/use-firefox-selenium-using-geckodriver-selenium-3/
  599. WebDriver Support in Safari 10: https://webkit.org/blog/6900/webdriver-support-in-safari-10/ (run automated tests against iPhones, iPads & iPods via Safari iOS WebDriver)
  600. BrowserStack - Selenium Capabilities Generator: https://www.browserstack.com/automate/capabilities
  601. How to setup "MutableCapabilities": https://gist.github.com/shs96c/0951bdd0ca903ca22b2510e4438085c3
  602. Cannot find firefox binary in PATH. Make sure FireFox is installed: https://stackoverflow.com/questions/20950748/cannot-find-firefox-binary-in-path-make-sure-firefox-is-installed
  603. How To Upgrade from SeleniumRC to WebDriver: http://elementalselenium.com/tips/28-upgrading-from-rc
  604. Moving to Selenium 2 on WebDriver, Part No.1: http://rostislav-matl.blogspot.com/2011/03/moving-to-selenium-2-on-webdriver-part.html (suggests "isVisible()" moves to "isDisplayed()")
  605. Handling Date Time Picker using Selenium: http://www.guru99.com/handling-date-time-picker-using-selenium.html
  606. Selenium -- How to verify the current date value in a field: http://groups.google.com/forum/#!topic/selenium-users/LXWik4nm6U8
  607. Implicit, Explicit & Fluent Waits in Selenium: https://www.guru99.com/implicit-explicit-waits-selenium.html
  608. Selenium (JavaDocs) - FluentWait: https://www.selenium.dev/selenium/docs/api/java/org/openqa/selenium/support/ui/FluentWait.html
  609. WebDriver Wait For Page to Load examples (Java .vs. JS): https://devqa.io/webdriver-wait-page-load-example-java/
  610. What is Explicit wait in Selenium Webdriver: http://learn-automation.com/explicit-wait-in-selenium-webdriver/
  611. Wait commands in Selenium (Java): http://toolsqa.com/selenium-webdriver/wait-commands/
  612. WebDriver Wait For Page to Load Example in Java: https://www.testingexcellence.com/webdriver-wait-page-load-example-java/
  613. Selenium Webdriver Fluent Wait Command With Examples: https://www.techbeamers.com/webdriver-fluent-wait-command-examples/
  614. Selenium 101 - Navigating Waits and Sleeps (NodeJS example): https://crossbrowsertesting.com/blog/test-automation/sleeps-waits-in-selenium/
  615. How to hide Firefox window (Selenium WebDriver)?: http://stackoverflow.com/questions/5370762/how-to-hide-firefox-window-selenium-webdriver/23898148#23898148
  616. Login popup window using selenium webdriver?: https://stackoverflow.com/questions/12151958/login-popup-window-using-selenium-webdriver
  617. How to Use Selenium with JMeter's Webdriver Sampler: https://www.blazemeter.com/blog/jmeter-webdriver-sampler
  618. How to Easily Record JMeter and Selenium Scripts with the BlazeMeter Chrome Extension: https://info.blazemeter.com/how-to-easily-record-jmeter-and-selenium-scripts-with-the-blazemeter-chrome-extension-on-demand-webcast
  619. Page scroll up or down in Selenium WebDriver (Selenium 2) using java: https://stackoverflow.com/questions/12293158/page-scroll-up-or-down-in-selenium-webdriver-selenium-2-using-java
  620. How To Scroll Web Page Down Or UP Using Selenium WebDriver: https://www.softwaretestingmaterial.com/scroll-web-page-using-selenium-webdriver/
  621. How to keyPress Page Down multiple times in selenium WebDriver using java?: https://stackoverflow.com/questions/45418617/how-to-keypress-page-down-multiple-times-in-selenium-webdriver-using-java
  622. Scrolling using Selenium WebDriver with Java: https://stackoverflow.com/questions/9443067/scrolling-using-selenium-webdriver-with-java
  623. How to press Keyboard in selenium webdriver? : http://seleniumhome.blogspot.ca/2013/07/how-to-press-keyboard-in-selenium.html
  624. How to scroll a page with Selenium: https://stackoverflow.com/questions/8433223/how-to-scroll-page-with-selenium
  625. When running WebDriver with Chrome browser, getting message, “Only local connections are allowed” even though browser launches properly: https://stackoverflow.com/questions/25080500/when-running-webdriver-with-chrome-browser-getting-message-only-local-connect/25088200#25088200
  626. What’s new in selenium 3.0: http://qavalidation.com/2016/08/whats-new-in-selenium-3-0.html/
  627. Enhancing automated testing in Microsoft Edge with new WebDriver capabilities, W3C protocol support, and automatic updates: https://blogs.windows.com/msedgedev/2018/06/14/webdriver-w3c-recommendation-feature-on-demand/
  628. Bringing new life into Edge Selenium Tools: https://dev.to/mintzworld/bringing-new-life-into-edge-selenium-tools-5b25
  629. Can Selenium interact with an existing browser session?: https://stackoverflow.com/questions/8344776/can-selenium-interact-with-an-existing-browser-session
  630. Selenium Java - Hybrid Framework: https://github.com/Abhilash04/SeleniumJavaHybridFramework (some helpful example patterns such as Apache POI - Excel Data Reader, PageObject test pattern, etc)
  631. Selenium -- How to access the same session in a new window?: https://sqa.stackexchange.com/questions/15594/selenium-how-to-access-the-same-session-in-a-new-window
  632. Selenium WebDriver manager().getCookies() returns 0 always: https://stackoverflow.com/questions/15952262/selenium-webdriver-manager-getcookies-returns-0-always
  633. WebDriver – How to Restore Cookies in New Browser Window: https://www.testingexcellence.com/webdriver-how-to-restore-cookies-in-new-browser-window/
  634. Cookie Handling in Selenium WebDriver: https://www.guru99.com/handling-cookies-selenium-webdriver.html
  635. Managing Cookies with Selenium for Java: https://applitools.com/event/cookies-selenium-java/
  636. How do I load session and cookies from Selenium browser to requests library in Python?: https://stackoverflow.com/questions/29563335/how-do-i-load-session-and-cookies-from-selenium-browser-to-requests-library-in-p
  637. SafariDriver (SAFARI EXTENSION): http://selenium-release.storage.googleapis.com/index.html?path=2.48/
  638. Testing with WebDriver in Safari: https://developer.apple.com/documentation/webkit/testing_with_webdriver_in_safari
  639. WebDriver Support in Safari 10: https://webkit.org/blog/6900/webdriver-support-in-safari-10/
  640. Steps to get Safari Webdriver running on Mac OSX: https://itisatechiesworld.wordpress.com/2015/04/15/steps-to-get-selenium-webdriver-running-on-safari-browser/
  641. How to run Selenium tests in Safari browser?: http://toolsqa.com/selenium-webdriver/running-tests-in-safari-browser/
  642. How To Use Safari + Selenium: http://elementalselenium.com/tips/69-safari
  643. 43 Exceptions in Selenium -- Have you ever "met" them?: https://www.katalon.com/resources-center/blog/selenium-exceptions/#
  644. Automated Testing recipes with Selenium WebDriver: https://github.com/atinfo/at.info-knowledge-base/tree/master/functional%20test%20automation/webdriver
  645. A Look at New Java Features in Test Automation: http://angiejones.tech/new-java-features-test-automation
  646. Handling Authentication Requests with Selenium - Using a Web Proxy for Basic Authentication: PART 1 | PART 2 | PART 3
  647. Exercise on safely waiting for unstable web elements with WebDriver: https://gist.github.com/djangofan/5112655 (several examples of waits/retry strategies)
  648. "Element is no longer attached to the DOM” StaleElementReferenceException when selecting HTML table row: https://sqa.stackexchange.com/questions/3464/element-is-no-longer-attached-to-the-dom-staleelementreferenceexception-when-s
  649. MozDev docs -- WebDriver - Stale element reference: https://developer.mozilla.org/en-US/docs/Web/WebDriver/Errors/StaleElementReference
  650. How to solve Stale Element Reference exception in Selenium Webdriver: https://learn-automation.com/how-to-solve-stale-element-reference-exception-in-selenium-webdriver/
  651. Stale Element Reference Exception in Selenium (two possible quick-fixes): https://thetesterscorner.com/stale-element-reference-exception-in-selenium/
  652. Selenium WebDriver How to Resolve Stale Element Reference Exception?: https://stackoverflow.com/questions/16166261/selenium-webdriver-how-to-resolve-stale-element-reference-exception
  653. How to Scroll into view in Selenium Webdriver: https://learn-automation.com/how-to-scroll-into-view-in-selenium-webdriver/
  654. Webdriver Firefox “Element could not be scrolled into view”: https://sqa.stackexchange.com/questions/32697/webdriver-firefox-element-could-not-be-scrolled-into-view
  655. How to crawl websites with Selenide and JDK 14+: https://blog.sebastian-daschner.com/entries/crawling-websites-selenide-jdk14 | SRC
  656. SauceLabs -- Selenium Cloud test - Platform Configurator: https://wiki.saucelabs.com/display/DOCS/Platform+Configurator#/
  657. Docker -- Selenium image for Automated Testing - Getting Started: https://www.youtube.com/watch?v=S4OkrnFb-YY
  658. How To Run Your Tests Headlessly with Xvfb: http://elementalselenium.com/tips/38-headless (command to setup xvfb for headless testing on Unix/Linux "nohup Xvfb -ac :99 -screen 0 1280x1024x16 -extension RANDR & export DISPLAY=:99")
  659. wikipedia: Xvfb
  660. How to install Xvfb (X virtual framebuffer) on Redhat 6.5?: https://stackoverflow.com/questions/21671552/how-to-install-xvfb-x-virtual-framebuffer-on-redhat-6-5
  661. Start and use Xvfb, enable X-server on headless system: http://www.thinkplexx.com/learn/howto/linux/system/start-and-use-xfdb-enable-x-server-on-headless-system
  662. Hands on with headless chrome and firefox testing in 5 mins: https://engineering.upgrad.com/turn-your-website-testing-painless-with-chrome-and-firefox-headless-92b6f023d375
  663. Headless Chrome run with selenium: https://stackoverflow.com/questions/47067188/headless-chrome-run-with-selenium
  664. Headless driver: https://stackoverflow.com/questions/51357401/headless-driver
  665. How To solve this java.lang.NoSuchFieldError: DISMISS_AND_NOTIFY?: https://stackoverflow.com/questions/51520642/how-to-solve-this-java-lang-nosuchfielderror-dismiss-and-notify
  666. Headless Browsers roundup: https://chercher.tech/java/headless-browsers-selenium-webdriver
  667. Selenium Grid Extras: https://github.com/groupon/Selenium-Grid-Extras
  668. Distributed Test Execution in Selenium Using Selenium-Grid: https://dzone.com/articles/distributed-test-execution-in-selenium-using-selen
  669. Re-using existing browser session with Selenium Grid: https://tarunlalwani.com/post/reusing-existing-browser-session-selenium-grid-python/
  670. Execute WebDriver tests in Parallel using Selenium Grid: https://www.seleniumeasy.com/selenium-tutorials/parallel-execution-in-selenium-grid
  671. Automated Testing with Selenium Grid and Jenkins in 3 Steps: http://www.agiletrailblazers.com/blog/automated-testing-with-selenium-grid-and-jenkins
  672. How to configure Selenium HTML Reports in Jenkins: https://stackoverflow.com/questions/13082425/how-to-configure-selenium-html-reports-in-jenkins
  673. Selenium plugin for Jenkins: https://wiki.jenkins.io/display/JENKINS/Selenium+Plugin
  674. Selenium Grid VS Jenkins: https://stackoverflow.com/questions/27573634/selenium-grid-vs-jenkins
  675. Distributed Testing with Selenium Grid: https://www.packtpub.com/sites/default/files/downloads/Distributed_Testing_with_Selenium_Grid.pdf
  676. Mozilla Dev -- FireFox - Using headless mode: https://developer.mozilla.org/en-US/Firefox/Headless_mode
  677. HeadlessFirefoxSeleniumExample.java: https://github.com/mdn/headless-examples/blob/master/headlessfirefox-gradle/src/main/java/com/mozilla/example/HeadlessFirefoxSeleniumExample.java
  678. Demo code for the GTAC 2013 talk "Web Performance Testing with WebDriver" by Michael Klepikov: https://gist.github.com/klepikov/5457750 (measuring page load times within Selenium)
  679. GhostDriver: https://github.com/detro/ghostdriver | DOWNLOAD | npm package(GhostDriver is the Java PhantomJS Driver)
  680. How To Run Your Tests Headlessly with Ghost Driver: http://elementalselenium.com/tips/46-headless-ghostdriver
  681. Do I need ghostdriver to use Selenium & PhantomJS in Java?: https://stackoverflow.com/questions/18241823/do-i-need-ghostdriver-to-use-selenium-and-phantomjs-in-java
  682. Alternative Uses for GhostDriver and Headless Browser testing: http://seleniumsimplified.com/post/2013-08-30-alternative-uses-for-ghostdriver-and-headless-browser-testing/
  683. How to implement PhantomJS with Selenium WebDriver using java: https://stackoverflow.com/questions/24138398/how-to-implement-phantomjs-with-selenium-webdriver-using-java
  684. What is the Difference between Selenium Webdriver and Selenium Ghostdriver: https://stackoverflow.com/questions/33074133/what-is-the-difference-between-selenium-webdriver-and-selenium-ghostdriver
  685. WebDriver driver = new PhantomJSDriver(); FAILS now... What happened to Selenium's support for PhantomJS headless tests?: https://github.com/SeleniumHQ/selenium/issues/5295
  686. HTMLUnitDriver & PhantomJS for Selenium Headless Testing: https://www.guru99.com/selenium-with-htmlunit-driver-phantomjs.html
  687. Headless Browser Testing Using HtmlUnitDriver in Selenium WebDriver: https://www.softwaretestingmaterial.com/headless-browser-testing-using-htmlunitdriver/
  688. Headless browser Testing using Selenium HtmlUnitDriver: http://learn-automation.com/headless-browser-testing-using-selenium-htmlunitdriver/
  689. HtmlUnitDriver: https://github.com/SeleniumHQ/selenium/wiki/HtmlUnitDriver
  690. How to use HtmlUnit (without Selenium) in Java?: https://stackoverflow.com/questions/4869426/how-to-use-htmlunit-in-java#49383391 (see the HtmlUnit website as well for lots of examples)
  691. How to run webdriver in IE browser?: https://www.seleniumeasy.com/selenium-tutorials/how-to-run-webdriver-in-ie-browser
  692. WebDriver test automation is like giving directions (Selenium Test Suites/Cases) to a taxi driver (WebDriver) who drives a car (browser): http://test-able.blogspot.ca/2016/01/webdriver-test-automation-like-taxi-driving.html
  693. Adding Executables to your PATH: https://seleniumhq.github.io/docs/wd.html#adding_executables_to_your_path
  694. Selenium -- Internet Explorer Driver required setup steps: https://github.com/SeleniumHQ/selenium/wiki/InternetExplorerDriver#required-configuration
  695. Getting Started with SeleniumIDE Plugins: https://github.com/SeleniumHQ/selenium-ide/wiki/Getting-Started-with-Plugins
  696. Selenium IDE v3.0 quick start guide: https://devopsqa.wordpress.com/2018/04/17/selenium-ide/
  697. Selenium SIDE Runner: https://github.com/SeleniumHQ/selenium-ide/blob/extensibility/packages/selenium-side-runner/README.md
  698. SeleniumIDE + Applitools integration ("visual testing" add-on):https://applitools.com/selenium-ide | VIDEOS | DOCS
  699. Applitools for Selenium IDE Tutorial: https://applitools.com/tutorials/selenium-ide.html#selenium-ide-videos
  700. Firefox 55 & Selenium IDE: https://seleniumhq.wordpress.com/2017/08/09/firefox-55-and-selenium-ide/ (officially the end of the line for legacy FF XUL/XPI SeleniumIDE, an effort is now underway to replace it with a WebExtensions API version that should work in FF/Chrome/Opera)
  701. SideeX - extended version of Selenium IDE: http://sideex.org/ (works on Chrome/FF, more limited functionality, still allows export/bindings)
  702. SnapTest - SeleniumIDE "in the Cloud": https://www.snaptest.io/ (although has a smoother UI and a few nice features, it only implements part of Selenium features and seems to be trending towards vendor lock-in to their Cloud services)
  703. SeleniumIDE 3.x to 2.x converter: http://output.jsbin.com/zagemaw
  704. Selenium IDE 4.x - The Next Generation (WEBINAR): https://applitools.com/blog/selenium-ide-by-simon-stewart
  705. SeleniumIDE -- Adding "Code Export" feature back: https://github.com/SeleniumHQ/selenium-ide/issues/592
  706. SeleniumIDE -- ".side"-format specification: https://github.com/SeleniumHQ/selenium-ide/issues/77
  707. Using Selenium IDE for the first time: https://techblog.polteq.com/en/using-selenium-ide-first-time/
  708. Why you should learn test automation with Selenium IDE: https://medium.com/@alicealdaine/why-you-should-learn-test-automation-with-selenium-ide-ae252c65b45d
  709. Recording Test Scripts: http://blog.browsermob.com/help/creating-a-test/recording-test-scripts/
  710. Automated Web Testing with Selenium and the NetBeans Platform: http://wadechandler.blogspot.ca/2011/04/automated-web-testing-with-selenium-and.html
  711. 6 Ways to Make The Most of Selenium IDE: http://joshjustice.wordpress.com/2010/04/07/6-ways-to-make-the-most-of-selenium-ide/
  712. How to Click a Link by href value in WebDriver: http://www.testingexcellence.com/click-link-href-value-webdriver/
  713. How to click on All links in Web page: https://stackoverflow.com/questions/21898567/how-to-click-on-all-links-in-web-page
  714. How to click all links in WebPage (Selenium WebDriver): http://stackoverflow.com/questions/21898567/how-to-click-on-all-links-in-web-page
  715. xPath for href element: https://stackoverflow.com/questions/13124942/xpath-for-href-element
  716. SeleniumIDE "selectframe" command example with relative=up: http:www.software-testing-tutorials-automation.com/2013/06/selenium-selectframe-command-example.html (in SeleniumIDE 3.x+ it is preferred to use relative=parent)
  717. How to find broken links using Selenium IDE (or WebDriver): https://sqa.stackexchange.com/questions/11879/how-to-find-broken-links-using-selenium-ide
  718. Take a screenshot with Selenium WebDriver: https://stackoverflow.com/questions/3422262/take-a-screenshot-with-selenium-webdriver
  719. Selenium Tips -- Taking ScreenShots on the Server: https://web.archive.org/web/20110311121204/https://saucelabs.com/blog/index.php/2009/10/selenium-tip-of-the-week-screenshot/
  720. Compare screenshots of rendered web pages: ttps://sqa.stackexchange.com/questions/2459/compare-screenshots-of-rendered-web-pages
  721. How to Do Visual Testing with Selenium: http://testautomation.applitools.com/post/105435804567/how-to-do-visual-testing-with-selenium
  722. How to Do Visual Testing with Selenium: https://applitools.com/blog/how-to-do-visual-testing-with-selenium
  723. Selenium IDE Firefox add-on end of life: https://www.ghacks.net/2017/08/21/selenium-ide-firefox-add-on-end-of-live/
  724. Integrating Selenium with Google Drive: http://dzone.com/articles/integrating-selenium-with-google-drive (upload your Automated Testing Results from just about anywhere from Java)
  725. Selenium IDE Scheduler Has Arrived: Part 1 | Part 2 | Part 3 | Part 4 | Part 5 | Part 6
  726. How to handle a File Download in Selenium IDE: http://sqa.stackexchange.com/questions/14525/how-to-handle-a-download-file-in-selenium-ide
  727. How to Rename a File and Folder from the Command Prompt: http://www.sevenforums.com/tutorials/56013-file-folder-rename-command-prompt.html
  728. Selenium IDE - script execution time in output: http://stackoverflow.com/questions/15000648/selenium-ide-script-execution-time-in-output
  729. JMeter & Selenium WebDriver – Why would you want to combine them?: https://techblog.polteq.com/en/jmeter-and-webdriver-why-would-you-want-to-combine-them/
  730. JMeter and WebDriver – 2 ways to combine them effectively: https://techblog.polteq.com/en/jmeter-and-webdriver-2-ways-to-combine-them-effectively/
  731. 6 Ways to Make The Most of Selenium IDE: https://joshjustice.wordpress.com/2010/04/07/6-ways-to-make-the-most-of-selenium-ide/
  732. Is there a way for Selenium to verify if the number of items fits a criteria?: http://stackoverflow.com/questions/8838211/is-there-a-way-for-selenium-to-verify-if-the-number-of-items-fits-a-criteria
  733. How to extract the text within an HTML tag (in Selenium IDE)?: http://stackoverflow.com/questions/6069829/how-to-extract-the-text-within-an-html-tag-in-selenium-ide
  734. Running selenium IDE testcases in JMeter: https://groups.google.com/forum/#!topic/selenium-users/j5avEinNEjM
  735. Selenium+Junit+Jmeter: https://groups.google.com/forum/#!topic/selenium-users/_3g8goYyr9U/discussion
  736. Selenium IDE - Command to wait for 5 seconds: http://stackoverflow.com/questions/6694981/selenium-ide-command-to-wait-for-5-seconds
  737. Storing variables in Selenium IDE: http://webigniter.wordpress.com/2011/04/07/storing-variables-in-selenium-ide/
  738. Using variables in Selenium IDE: http://www.oshyn.com/Blogs/2014/February/Using-variables-in-Selenium-IDE
  739. Selenium IDE JavaScript and Command Parameters: http://seleniummaster.com/sitecontent/index.php/introduction-to-selenium-automation/selenium-ide/96-selenium-ide-javascript-and-command-parameters
  740. Get current system date using java script in Selenium IDE: http://seleniumide.blogspot.ca/2010/12/get-current-system-date-using-java.html
  741. Comparing dates in Selenium IDE: http://stackoverflow.com/questions/29364035/comparing-dates-in-selenium-ide (i.e. checking Age, find item with Date=Today, etc)
  742. Page load strategy for Chrome driver: https://stackoverflow.com/questions/43734797/page-load-strategy-for-chrome-driver
  743. Dynamic dates in Selenium IDE: http://dubbelfnutt.wordpress.com/2011/02/18/dynamic-dates-in-selenium-ide/
  744. How to get url from 'link' element in Selenium IDE: http://stackoverflow.com/questions/16220696/how-to-get-url-from-link-element-in-selenium-ide
  745. Selenium click on link: http://stackoverflow.com/questions/11311100/selenium-click-on-link
  746. Manual input from user while running Selenium IDE script: http://stackoverflow.com/questions/8921929/manual-input-from-user-while-running-selenium-ide-script
  747. How to parse a URL from string in Selenium IDE: http://stackoverflow.com/questions/7996820/how-to-parse-a-url-from-string-in-selenium-ide
  748. "storeLocation" and "storeTitle" commands in selenium IDE: http://www.software-testing-tutorials-automation.com/2012/11/storelocation-and-storetitle-commands.html
  749. Guide to installing the latest SeleniumIDE: https://www.guru99.com/install-selenuim-ide.html
  750. Selenium IDE "open" and "openWindow" commands with example: http://www.software-testing-tutorials-automation.com/2012/10/selenium-ide-openand-openwindow-command.html
  751. Selenium IDE and xpath - find text / row in table and select radio box: http://stackoverflow.com/questions/10428878/selenium-ide-and-xpath-find-text-row-in-table-and-select-radio-box
  752. CSS target elements by partial class or ID name: http://www.antimath.info/css/css-target-elements-by-partial-class-or-id-name/
  753. Better Web Testing With Selenium: https://dzone.com/articles/better-web-testing-with-selenium (selector best practices for maintainability: IDs, then CSS path, then xPath, then specific Classes by name but only if well architected for uniqueness/specificity, lastly pixel-based)
  754. WebDriver -- Advanced Usage: http://www.seleniumhq.org/docs/04_webdriver_advanced.jsp
  755. How to use Selenium IDE with Scripts & Commands (Assertions, Actions): http://www.guru99.com/first-selenium-test-script.html (continue Test Script despite an error)
  756. Selenium IDE - "runScript" Command example to generate alert including variable value : http://www.software-testing-tutorials-automation.com/2013/11/selenium-ide-runscript-command-example.html
  757. Getting Started With Selenium - Test Automation Pyramids: https://smartbear.com/learn/automated-testing/getting-started-with-selenium/?q=selenium
  758. Selenium -- How do I get the src of an image?: http://stackoverflow.com/questions/7245013/selenium-how-do-i-get-the-src-of-an-image
  759. Selenium - test if element contains some text: http://stackoverflow.com/questions/9922054/selenium-test-if-element-contains-some-text
  760. Selenium jQuery lib in Java: http://www.vcskicks.com/selenium-jquery.php
  761. Using Selenium IDE's getEval command with FirefoxWebdriver: http://stackoverflow.com/questions/17214151/using-selenium-ides-geteval-command-with-firefoxwebdriver
  762. What is "geckodriver"? How to use it in Selenium WebDriver?: https://sqa.stackexchange.com/questions/26328/what-is-geckodriver-how-to-use-it-in-selenium-webdriver
  763. How to Use Gecko (Marionette) Driver in Selenium 3: https://www.toolsqa.com/selenium-webdriver/how-to-use-geckodriver/
  764. Compare stored values in Selenium IDE: http://stackoverflow.com/questions/30073301/compare-stored-values-in-selenium-ide
  765. Selenium questions/answers from an expert Automated Tester: https://arunpp.wordpress.com/selenium/
  766. Locators in Selenium IDE -- CSS Selector, DOM, XPath, Link Text, ID: https://www.guru99.com/locators-in-selenium-ide.html
  767. Writing CSS Selectors (WEBINAR): https://applitools.com/blog/css-selectors | CSSSelectorsTest.java | fullPage.html
  768. How to Identify Web Elements Using Selenium Xpath and Other Locators – Selenium Tutorial #5: http://www.softwaretestinghelp.com/using-selenium-xpath-and-other-locators-selenium-tutorial-5/
  769. SauceLabs -- Selenium Tips - CSS Selectors: https://saucelabs.com/resources/articles/selenium-tips-css-selectors
  770. Why CSS Selectors are the most useful Selenium WebDriver locators?: https://www.pineboat.in/post/css-selectors-selenium-webdriver-find-element-xpath-replaced/
  771. CSS Selector Strategies for Automated Browser Testing: https://ghostinspector.com/blog/css-selector-strategies-automated-browser-testing/
  772. CSS nth-child Selector: https://codoid.com/css-nth-child-selector/
  773. How to Use CSS Selector for Identifying Web Elements for Selenium Scripts – Selenium Tutorial #6: https://www.softwaretestinghelp.com/css-selector-selenium-locator-selenium-tutorial-6/
  774. How to get image src path/filename using Selenium WebDriver: https://stackoverflow.com/questions/12290325/how-to-get-image-src-name-using-selenium-webdriver?rq=1
  775. Get All image "src" values in selected container: https://stackoverflow.com/questions/33259923/get-all-src-image-selected-container
  776. How to assert the src of an image in Selenium?: https://groups.google.com/forum/#!topic/webdriver/-NRiru2dEoo
  777. Use xpath to get "src" attribute from "img" tag: http://grokbase.com/t/gg/selenium-users/127jnf9p1m/want-to-use-the-xpath-by-using-src-tag
  778. ElementalSelenium -- CSS .vs. xPath selector Benchmarks - http://elementalselenium.com/tips/category/benchmarks
  779. Selenium IDE - always fail on any 500 error: http://stackoverflow.com/questions/6228700/selenium-ide-always-fail-on-any-500-error/6989213#6989213 (requires a custom script in the Selenium settings)
  780. Tutorial post for selenium IDE "waitForTitle" and "waitForNotTitle" commands: http://www.software-testing-tutorials-automation.com/2013/11/tutorial-post-for-selenium-ide.html
  781. WaitForTitle does not work: http://stackoverflow.com/questions/39107883/waitfortitle-does-not-work
  782. Selenium IDE testing all links: http://stackoverflow.com/questions/10137250/selenium-ide-testing-all-links
  783. A Simple Loop in Selenium IDE: http://kb.jaxara.com/simple-loop-selenium-ide
  784. Selenium IDE Xpath Tutorials: http://seleniummaster.com/sitecontent/index.php/introduction-to-selenium-automation/selenium-ide/115-selenium-ide-xpath-tutorials
  785. Selenium IDE assertions "verifyNotText" and "verifyNotTitle" Command Examples: http://www.software-testing-tutorials-automation.com/2013/10/selenium-ide-assertions-verifynottext.html
  786. Selenium - test if element contains some text: https://stackoverflow.com/questions/9922054/selenium-test-if-element-contains-some-text
  787. Selenium get current URL after loading a page: https://stackoverflow.com/questions/16242340/selenium-get-current-url-after-loading-a-page#16242994
  788. How to store the content/value of xpath?: https://stackoverflow.com/questions/11010992/how-to-store-the-content-value-of-xpath
  789. How do I find an element that contains specific text in Selenium Webdriver (Python)?: https://stackoverflow.com/questions/12323403/how-do-i-find-an-element-that-contains-specific-text-in-selenium-webdriver-pyth
  790. Selenium -- test if element contains some text: https://stackoverflow.com/a/9928813/335867
  791. Selenium IDE "focus" and "keyUp" commands with example: http://www.software-testing-tutorials-automation.com/2013/07/selenium-ide-focus-and-keyup-commands.html' (click a troublesome button or link using tab over to it and hit Enter method)
  792. How do i allow Chrome to use my microphone programatically?: https://stackoverflow.com/questions/38832776/how-do-i-allow-chrome-to-use-my-microphone-programatically
  793. Parameterization of Tests in Selenium IDE: http://selftechy.com/2011/06/30/parameterization-of-tests-in-selenium-ide
  794. SeleniumIDE JS Extensions: http://www.seleniumhq.org/docs/08_user_extensions.jsp#using-user-extensions-with-selenium-ide | EXAMPLE
  795. When Selenium IDE Doesn't Work, SpiraTest Comes to the Rescue!: https://www.inflectra.com/Ideas/Entry/when-selenium-ide-doesnt-work-spiratest-comes-to-t-506.aspx
  796. Which test management tools provide integration with Selenium & CI tools?: http://www.inflectra.com/Ideas/Entry/test-management-tools-integration-with-selenium-ci-709.aspx
  797. Using a proxy server in SeleniumIDE 4.x: https://github.com/SeleniumHQ/selenium-ide/blob/master/packages/selenium-side-runner/README.md#using-a-proxy-server
  798. Stunning Return of Selenium IDE (Sweet Dream or Nightmare): https://www.joecolantonio.com/selenium-ide/
  799. Best Practice for Selenium IDE 3.2.X /3.3.X and Geckodriver: https://www.ibm.com/developerworks/community/blogs/0587adbc-8477-431f-8c68-9226adea11ed/entry/Best_Practice_for_Selenium_IDE_3_2_X_3_3_X_and_Geckodriver (includes SeleniumIDE .vs. GeckoDriver mapping table showing which commands are supported on both or just one)
  800. In search of the Selenium IDE’s successor: https://medium.com/@briananderson2209/in-search-of-the-selenium-ides-successor-33bc7eaefe7f
  801. Kantu - "SeleniumIDE Lite" for Chrome: https://a9t9.com/kantu/web-automation/chrome | SeleniumIDE original download for reference + FF <= 54 a Selenium
  802. Katalon Studio - free test automation IDE: https://www.katalon.com/ | SLIDES
  803. Katalon Recorder docs: https://docs.katalon.com/display/KR/Overview
  804. Import/Export function for Test Case variables in Katalon Studio: https://forum.katalon.com/discussion/9854/importexport-function-for-test-case-variables
  805. Handling Web Element Locators using Katalon Studio: https://www.katalon.com/resources-center/tutorials/web-element-locators/
  806. Katalon Studio webinars: https://m.youtube.com/channel/UC0g8oLvxnX0i3Ul98uSOrPA
  807. Silk WebDriver: https://www.microfocus.com/products/silk-portfolio/silk-webdriver/
  808. FRET (Front-End Testing Tool): https://www.frontendtest.org/blog/selenium-ide-chrome/ (claims to be "SeleniumIDE ported to Chrome")
  809. Canoo WebTest: http://webtest.canoo.com/webtest/manual/WebTestHome.html
  810. Kantu: https://a9t9.com/ | KANTU - Selenium IDE compatible commands
  811. iMacros: https://imacros.net/#prettyPhoto
  812. How to run tests from Selenium IDE in Chrome: http://screenster.io/running-tests-from-selenium-ide-in-chrome/
  813. Selenium IDE -- The Good, the Bad, and the Ugly: https://www.lucidchart.com/techblog/2016/09/13/selenium-ide-the-good-the-bad-and-the-ugly/
  814. Selenium IDE alternatives for UI regression testing: https://news.ycombinator.com/item?id=13586904
  815. Selenium IDE is not compatible with Firefox 55: https://github.com/SeleniumHQ/selenium/issues/4406
  816. Firefox 32 broken with selenium 2.42: https://github.com/SeleniumHQ/selenium-google-code-issue-archive/issues/7823
  817. Simulate "keyboard shortcuts" in SeleniumIDE through the execute script command: https://github.com/SeleniumHQ/selenium-ide/issues/929
  818. Simulate "Right-click" action in SeleniumIDE through the execute script command: https://github.com/SeleniumHQ/selenium-ide/issues/754
  819. EasyMock - comprehensive user guide: http://easymock.org/user-guide.html
  820. wikipedia: EasyMock
  821. EasyMock tutorial: https://www.tutorialspoint.com/easymock/
  822. Testing with EasyMock - Tutorial: http://www.vogella.com/tutorials/EasyMock/article.html
  823. dzone - JUnit & EasyMock (REFCARDZ): https://dzone.com/storage/assets/4076-rc028-010d-junit_0.pdf
  824. EasyMock Tutorial -- Getting Started: https://dzone.com/articles/easymock-tutorial-–-getting
  825. Easier testing with EasyMock: https://www.ibm.com/developerworks/library/j-easymock/index.html
  826. EasyMock tutorial – Getting Started: https://veerasundar.com/blog/2012/06/easymock-tutorial-getting-started/
  827. wikipedia: Mockito
  828. JUnit 5 mockito extension: https://github.com/mockito/mockito/wiki/Related-Projects
  829. Mockito tutorial: https://www.tutorialspoint.com/mockito/index.htm
  830. Unit tests with Mockito - Tutorial: http://www.vogella.com/tutorials/Mockito/article.html
  831. How to partially mock HttpServletRequest using Mockito: https://stackoverflow.com/questions/22714359/how-to-partially-mock-httpservletrequest-using-mockito
  832. dzone - Mockito (REFCARDZ): https://dzone.com/asset/download/256
  833. dzone - Getting Started with Mocking in Java using Mockito: https://dzone.com/articles/getting-started-mocking-java
  834. dzone - A Guide to Mocking With Mockito: https://dzone.com/articles/a-guide-to-mocking-with-mockito
  835. dzone - 5 Minute Mockito: https://dzone.com/articles/5-minute-mockito-tutorial-howto
  836. Mockito in six easy examples: https://gojko.net/2009/10/23/mockito-in-six-easy-examples/
  837. Unit Testing Complex Java Objects with Mockito: http://code.hootsuite.com/unit-testing-complex-java-objects-with-mockito/
  838. Mockito – Using Spies: http://www.baeldung.com/mockito-spy
  839. JUnit Testing using Mockito and PowerMock: https://blog.codecentric.de/en/2016/03/junit-testing-using-mockito-powermock/
  840. A Unit Testing Practitioner's Guide to Everyday Mockito: https://www.toptal.com/java/a-guide-to-everyday-mockito
  841. Using PowerMock with EasyMock: https://github.com/powermock/powermock/wiki/EasyMock
  842. Maven config - PowerMock + EasyMock: https://github.com/powermock/powermock/wiki/EasyMock-Maven
  843. EasyMock gets more power with PowerMock: http://www.tsolak.com/easymock-gets-more-power-with-powermock/
  844. Using PowerMock with Mockito: https://github.com/powermock/powermock/wiki/Mockito
  845. Maven setup for the Mockito 2.x: https://github.com/powermock/powermock/wiki/Mockito-2-Maven
  846. JUnit Testing using Mockito and PowerMock: https://blog.codecentric.de/en/2016/03/junit-testing-using-mockito-powermock/
  847. Watir - Podcasts: https://soundcloud.com/the-watir-podcast
  848. wikipedia: HP QuickTest Professional
  849. HP QuickTest Professional 11.00 Minimum System Requirements and Supported Environments: http://h18004.www1.hp.com/products/quickspecs/14128_div/14128_div.html
  850. QTP 11 – Firefox support matrix: http://www.learnqtp.com/qtp11-firefox-support-matrix/
  851. “Genie” – Automated UI Tester for Adobe ActionScript: http://inflagrantedelicto.memoryspiral.com/2012/06/genie-automated-ui-tester-for-adobe-actionscript/
  852. SikuliX: http://sikulix.com/
  853. Sikuli project downloads landing page: https://launchpad.net/sikuli
  854. How to Integrate Sikuli with Selenium Webdriver: learn-automation.com/integrate-sikuli-with-selenium-webdriver/
  855. The Road to HTML5 -- Automating visual testing with Sikuli: https://blog.gliffy.com/2012/07/12/the-road-to-html5-automating-visual-testing-with-sikuli/
  856. Sikuli Image/Visual Test Automation: https://roadtoautomation.blogspot.com/p/sikuli.html
  857. Under what circumstances is Sikuli better for test automation than Selenium or Watir?: https://sqa.stackexchange.com/questions/994/under-what-circumstances-is-sikuli-better-for-test-automation-than-selenium-or-w/3334
  858. Road to handle file download popup in webdriver using Sikuli: https://roadtoautomation.wordpress.com/2013/08/24/road-to-handle-file-download-popup-in-webdriver-using-sikuli/comment-page-1/
  859. Visual regression testing with PhantomCSS: https://css-tricks.com/visual-regression-testing-with-phantomcss/
  860. Visual Testing in Katalon Studio: https://forum.katalon.com/discussion/9799/visual-testing-in-katalon-studio
  861. Sikuli – for all those hard to reach places!: https://hel1lotestworld.com/2012/04/27/sikuli-for-all-those-hard-to-reach-places/
  862. Using Sikuli to test legacy Flash: https://technicaltesting.wordpress.com/2012/01/19/using-sikuli-to-test-legacy-flash/
  863. Sikuli Automation Tool with Coded UI (using via C#): http://afour-tech.ulitzer.com/node/3825668
  864. Building Large-scale Testing framework Using Sikuli --- to be revised: https://answers.launchpad.net/sikuli/+faq/1110
  865. Building Large-scale Testing framework Using Sikuli 1.0 - Mac and Windows: https://answers.launchpad.net/sikuli/+question/111193/+index
  866. Write sikuli code in pure java?: https://answers.launchpad.net/sikuli/+question/108878
  867. How to use sikuli with latest apple safari driver: https://stackoverflow.com/questions/40202241/how-to-use-sikuli-with-latest-apple-safari-driver
  868. Preparing Apple Safari for Testing: https://documentation.microfocus.com/help/index.jsp?topic=%2Fcom.borland.silktest.silk4j.doc%2FGUID-954CD5DE-6B61-477B-A358-86BA4C6C0DF9.html
  869. Testing with WebDriver in Safari: https://developer.apple.com/documentation/webkit/testing_with_webdriver_in_safari
  870. Safari -- Unable to upload File using file chooser window, error: 'This Safari window is remotely controlled by an automated test.': https://github.com/SeleniumHQ/selenium/issues/6198
  871. WebDriver Support in Safari 10: https://webkit.org/blog/6900/webdriver-support-in-safari-10/
  872. Maven project does not referenced sikuli-api dependency in java: https://stackoverflow.com/questions/34672702/maven-project-does-not-referenced-sikuli-api-dependency-in-java
  873. Continuous Testing -- Onboarding and Best Practices: http://info.blazemeter.com/thank-you-continuous-testing-onboarding-best-practices-0
  874. LoadRunner tutorials: http://motevich.blogspot.ca/2008/01/loadrunner-tutorials.html
  875. Apache JMeter 3.0 – What’s New?: http://dzone.com/articles/apache-jmeter-30-whats-new
  876. How to Write a plugin for JMeter: http://jmeter.apache.org/extending/jmeter_tutorial.pdf
  877. dzone -- Getting Started With Apache JMeter (REFCARDZ): https://dzone.com/refcardz/getting-started-with-apache-jmeter
  878. JMeter Tutorial: http://www.tutorialspoint.com/jmeter/
  879. JMeter Load Testing Tutorial: https://www.testertestingtoolseasy.com/2018/08/jmeter-load-testing-tutorial-step-0.html (in parcticular see sections 6, 7, [2] for good details on recording a Test Scenario for Android / iOS, and re-running later)
  880. How to get started with JMeter (PART 1): http://dzone.com/articles/how-to-get-started-with-jmeter-part-1-installation
  881. Apache JMeter Tutorial: http://dzone.com/articles/apache-jmeter-tutorial
  882. Load Testing Your Application Using JMeter, Docker, and Amazon Web Services: https://dzone.com/articles/stop-hoping-for-the-best-and-load-performing-tests
  883. How to Use JMeter for Performance & Load Testing overview: https://www.guru99.com/jmeter-performance-testing.html
  884. JMeter 12-step to Mastery Tutorial: http://www.guru99.com/jmeter-tutorials.html
  885. How to run JMeter in Non GUI mode: https://blog.e-zest.com/how-to-run-jmeter-in-non-gui-mode/
  886. How to Create Non-GUI JMeter Tests with JMeter Classes: https://www.blazemeter.com/blog/how-to-create%3Dnon-gui-jmeter-tests-with-jmeter-classes
  887. Distributed Performance Testing With Maven JMeter and Jenkins: http://dzone.com/articles/distributed-performance
  888. Recording Test Performance (history) with Jenkins: https://dzone.com/articles/recording-test-performance (store historical performance to generate graphs over time)
  889. Integrating Selenium with JMeter for Load Testing: http://www.anzaan.com/2012/07/integrating-selenium-with-jmeter-for-application-load-testing/
  890. Selenium Integration with JMeter: https://testxpress.wordpress.com/2012/09/16/selenium-integration-with-jmeter/
  891. Running Selenium scripts with JMeter: http://stackoverflow.com/questions/7817498/running-selenium-scripts-with-jmeter
  892. Selenium vs. JMeter -- Which to Choose and When: https://dzone.com/articles/selenium-vs-jmeter-which-one-should-you-choose-and
  893. Build JMeter Test Plan: https://www.toolsqa.com/jmeter/build-jmeter-test-plan/
  894. How to handle windows popups using JMeter?: http://stackoverflow.com/questions/36907636/how-to-handle-windows-popups-using-jmeter
  895. Workbench section not showing in apache jmeter: https://stackoverflow.com/questions/48780603/workbench-section-not-showing-in-apache-jmeter
  896. JMeter Listeners: http://jmeter.apache.org/usermanual/listeners.html#defaults
  897. JMeter Listeners -- Part I - Listeners with Basic Displays: https://www.blazemeter.com/blog/jmeter-listeners-part-1-basic-display-formats
  898. JMeter Listeners -- Part II - Listeners That Aggregate Data Samples:
  899. JMeter Listeners -- Part III - Listeners That Calculate Distribution Metrics: https://dzone.com/articles/jmeter-listeners-part-3-listeners-that-calculate-d
  900. JMeter Capturing Full Output: https://www.redline13.com/blog/2019/08/jmeter-capturing-full-output-2/
  901. MySQL Database and JMeter -- How to Test Your Connection: https://dzone.com/articles/mysql-database-and-jmeter-how-to-test-your-connect
  902. Using JMeter for Performance Testing HLS Video Delivery: http://info.blazemeter.com/thank-you-using-jmeter-performance-testing-hls-video-delivery-0
  903. XMPP Load Testing - Advanced Scenarios: https://dzone.com/articles/xmpp-load-testing-advanced-scenarios
  904. JMeter Parameterization -- The Complete Guide: https://dzone.com/articles/jmeter-parameterization-the-complete-guide
  905. Generating Report Dashboard: http://jmeter.apache.org/usermanual/generating-dashboard.html
  906. Continuous Integration 101 -- How to Run JMeter With Jenkins: https://www.blazemeter.com/blog/continuous-integration-101-how-run-jmeter-jenkins
  907. Configure Jenkins to Run and Show JMeter Tests: http://www.baeldung.com/jenkins-and-jmeter (both Jenkins classic GUI config and Jenkins Pipeline examples)
  908. How to Set Your JMeter Load Test to Use Client Side Certificates: https://www.blazemeter.com/blog/how-set-your-jmeter-load-test-use-client-side-certificates
  909. How to Load Test Async Requests with JMeter: https://www.blazemeter.com/blog/how-to-load-test-async-requests-with-jmeter
  910. How to Load Test OpenID Secured Websites: https://www.blazemeter.com/blog/how-load-test-openid-secured-websites
  911. The Boundary Extractor vs. the Regular Expression Extractor in JMeter: https://www.blazemeter.com/blog/the-boundary-extractor-vs-the-regular-expression-extractor-in-jmeter
  912. JMeter Plugins: https://jmeter-plugins.org/
  913. How to Create a Local Repository of JMeter Plugins: https://dzone.com/articles/how-to-create-a-local-repository-of-jmeter-plugins
  914. How to Reuse Your JMeter Code With JAR Files and Save Time: https://dzone.com/articles/how-to-reuse-your-jmeter-code-with-jar-files-and-s
  915. Make Use of Docker with JMeter (locally) - Learn How: https://www.blazemeter.com/blog/make-use-of-docker-with-jmeter-learn-how
  916. Running JMeter with Docker in the Cloud: https://www.blazemeter.com/blog/running-jmeter-with-docker-in-the-cloud
  917. RTMP Performance Testing with JMeter -- Learn How: https://www.blazemeter.com/blog/rtmp-performance-testing-with-jmeter-learn-how
  918. JMeter’s Raw Data Source PreProcessor - The Ultimate Guide: https://www.blazemeter.com/blog/jmeters-raw-data-source-preprocessor-the-ultimate-guide
  919. Load Testing Mobile Apps Made Easy: https://www.blazemeter.com/blog/load-testing-mobile-apps-made-easy
  920. The Ultimate JMeter Resource List: https://www.blazemeter.com/blog/ultimate-jmeter-resource-list
  921. Beanshell vs JSR223 vs Java JMeter Scripting -- The Performance-Off You've Been Waiting For!: https://www.blazemeter.com/blog/beanshell-vs-jsr223-vs-java-jmeter-scripting-its-performance
  922. How to Change JMeter´s Load During Runtime: https://www.blazemeter.com/blog/how-to-change-jmeters-load-during-runtime
  923. Social Network Authentication Load Testing with JMeter: https://www.blazemeter.com/blog/social-network-authentication-load-testing-with-jmeter
  924. How to Count Retries as a Single Request in JMeter: https://www.blazemeter.com/blog/how-to-count-retries-as-a-single-request-in-jmeter
  925. JMeter WebSocket Samplers: https://bitbucket.org/pjtr/jmeter-websocket-samplers/src/master/
  926. How to record an Android application using HTTPS traffic with JMeter: https://www.ubik-ingenierie.com/blog/how-to-record-android-application-using-https-traffic-jmeter/
  927. Selenium .vs. JMeter - Which One Should You Choose, and When?: https://www.blazemeter.com/blog/selenium-vs-jmeter-which-one-should-you-choose-and-when
  928. What’s New in Apache JMeter 5.0?: https://blog.e-zest.com/whats-new-in-apache-jmeter-5.0
  929. Stress testing with JMeter: https://geoserver.geo-solutions.it/edu/en/enterprise/jmeter.html
  930. The JMeter HTTP Raw Request Sampler - When and How to Use It: https://www.blazemeter.com/blog/the-jmeter-http-raw-request-sampler-when-and-how-to-use-it
  931. JMeter - Browser recording via "HTTPS/Proxy Recorder": https://www.blazemeter.com/jmeter-training/jmeter-browser-recording
  932. Recording a user session with the proxy: https://guide.blazemeter.com/hc/en-us/articles/206733979-Recording-a-user-session-with-the-proxy
  933. How to Make Performance Testing Simple with JMeter & BlazeMeter (OVERVIEW): https://www.youtube.com/watch?v=yT0ULpRgZMI
  934. No Need to Fear -- How to Make Performance Testing with JMeter Simple (WEBINAR): https://info.blazemeter.com/make-performance-testing-jmeter-simple-ty?submissionGuid=146a1bf1-a982-40dc-917c-0c03151f06a5
  935. Understanding Your Reports - Part 4: How to Read Your Load Testing Reports on BlazeMeter https://www.blazemeter.com/blog/understanding-your-reports-part-4-how-read-your-load-testing-reports-blazemeter
  936. Top 8 JMeter Java Classes You Should Be Using with Groovy: https://www.blazemeter.com/blog/top-8-jmeter-java-classes-you-should-be-using-with-groovy
  937. How to Use HTTP Basic Authentication in JMeter: https://www.blazemeter.com/blog/how-use-http-basic-authentication-jmeter | VIDEO
  938. JMeter Basic Authentication Explained: https://octoperf.com/blog/2018/04/24/jmeter-basic-authentication/
  939. How to Run Performance Tests on OAuth Secured Apps with JMeter: https://www.blazemeter.com/blog/how-run-performance-tests-oauth-secured-apps-jmeter
  940. How to Load Test Async Requests with JMeter: https://www.blazemeter.com/blog/how-to-load-test-async-requests-with-jmeter
  941. How to Use Multiple Certificates When Load Testing Secure Websites: https://www.blazemeter.com/blog/how-to-use-multiple-certificates-when-load-testing-secure-websites
  942. JMeter Constant Throughput Timer: https://performanceengineeringsite.wordpress.com/2018/04/21/constant-throughput-timer/
  943. Performance Testing of Event-Driven Microservices: https://medium.com/capital-one-tech/performance-testing-of-event-driven-microservices-f5de74305985
  944. Implementing Data Driven Testing Using Google Sheets: https://www.blazemeter.com/blog/implementing-data-driven-testing-using-google-sheets
  945. The JMeter Access Log Sampler - A Guide: https://www.blazemeter.com/blog/the-jmeter-access-log-sampler-a-guide
  946. How to Use the Composite Graph Plugin in JMeter: https://www.blazemeter.com/blog/how-to-use-the-composite-graph-plugin-in-jmeter
  947. QA -- Performance Test Plan using JMeter: https://github.com/department-of-veterans-affairs/ascent-sample/wiki/QA-:-Performance-Test-Plan-using-JMeter
  948. JMeter Properties -- Configurable Test Plans: https://octoperf.com/blog/2019/01/14/flexible-test-plans/
  949. JMeter Dashboard and Other Cool JMeter Improvements in RedLine13: https://www.redline13.com/blog/2019/06/jmeter-dashboard/
  950. JMeter Testing Multiple Random File Uploads: https://www.redline13.com/blog/2019/09/jmeter-multiple-random-file-uploads/
  951. JMeter – How To Create Reusable & Modular Test Scripts: www.vinsguru.com/jmeter-modularizing-test-scripts/
  952. How to do Performance Testing using JMeter? – JMeter Tutorials Series Day 5: https://www.softwaretestingclass.com/how-to-do-performance-testing-using-jmeter-tutorial-series-5/
  953. JMeter’s Distributed Testing – JMeter Tutorials Series Day 10: https://www.softwaretestingclass.com/jmeters-distributed-testing-jmeter-tutorials-series-day-10/
  954. JMeter Parameterization -- The Complete Guide: https://dzone.com/articles/jmeter-parameterization-the-complete-guide
  955. JMeter – How To Run Multiple Thread Groups in Multiple Test Environments through properties & parameterization: https://www.vinsguru.com/jmeter-manage-test-plan/
  956. JMeter Performance and Load Testing: https://dzone.com/articles/jmeter-performance-and-load-testing
  957. How to Test SOAP Web Services With JMeter: https://dzone.com/articles/how-to-test-soap-services-with-jmeter
  958. Performance Test Strategy for Jenkins Pipeline (Groovy DSL) - Continuous Performance Testing: https://octoperf.com/blog/2019/03/21/performance-test-strategy/
  959. JMeter – Continuous Performance Testing – JMeter + ANT + Jenkins Integration – Part 2: http://www.testautomationguru.com/jmeter-continuous-performance-testing-part2/
  960. How to make JMeter behave more like a real browser: https://guide.blazemeter.com/hc/en-us/articles/206733719-How-to-make-JMeter-behave-more-like-a-real-browser
  961. How to Load Test AJAX/XHR Enabled Sites With JMeter: https://www.blazemeter.com/blog/how-load-test-ajaxxhr-enabled-sites-jmeter/
  962. Authentication and load testing using JMeter: https://sqa.stackexchange.com/questions/30979/authentication-and-load-testing-using-jmeter
  963. JMeter load testing in SPA: https://stackoverflow.com/questions/55941735/jmeter-load-testing-in-spa
  964. JMeter Tutorials -- Test Better, Build Better (ROUNDUP): https://dzone.com/articles/jmeter-tutorial-1
  965. How to Generate Jmeter Report Dashboard: https://learn-jmeter.blogspot.com/2016/10/how-to-generate-jmeter-report-dashboard.html
  966. JMeter 4.0: Error starting remote server: https://stackoverflow.com/questions/50113061/jmeter-4-0-error-starting-remote-server (what to do when getting message: "Server failed to start: java.rmi.server.ExportException: Listen failed on port: 0; nested exception is: java.io.FileNotFoundException: rmi_keystore.jks")
  967. JMeter - Setting up SSL: http://jmeter.apache.org/usermanual/remote-test.html#setup_ssl
  968. What You Need to Know About the Difference Between JMeter 4 & 5: https://abstracta.us/blog/performance-testing/difference-between-jmeter4-jmeter5/
  969. How to resolve Root CA Certificate message in JMeter – Windows 10: http://qainsights.com/resolve-root-ca-certificate-message-jmeter-windows-10/
  970. How to Run JMeter Test Plan Via Docker: https://dzone.com/articles/how-to-run-jmeter-test-plan-via-docker
  971. Automatically stop a JMeter load test after too many errors: https://www.redline13.com/blog/2021/03/stop-a-jmeter-load-test/
  972. JMeter - Example of Synchronizing Timer (sample usage): http://www.2min2code.com/articles/jmeter_intro/sync_timer
  973. Most Popular Load Test Types Over The Years – JMeter Keeps Growing: https://www.redline13.com/blog/2021/08/popular-load-test-types/
  974. Meet skipfish, our automated web security scanner: http://googleonlinesecurity.blogspot.ca/2010/03/meet-skipfish-our-automated-web.html
  975. Akamai Security Advisory - Skipfish Web App Scanner: http://www.akamai.com/dl/akamai/Akamai-Security-Advisory-Skipfish-Application-Scanner.pdf
  976. Attackers Use Skipfish to Target Financial Sites: http://blogs.akamai.com/2014/01/attackers-use-skipfish-to-target-financial-sites.html
  977. Google releases Skipfish web-security scanner: http://www.zdnet.com/article/google-releases-skipfish-web-security-scanner-3040088391/
  978. BDD-Security (Continuum Security Automation): http://iriusrisk.com/open-source/
  979. Agile in a Nutshell -- The Testing Pyramid: http://www.agilenutshell.com/episodes/41-testing-pyramid
  980. The Mobile Test Pyramid: https://dojo.ministryoftesting.com/dojo/lessons/the-mobile-test-pyramid
  981. Inverting The Testing Pyramid: https://www.slideshare.net/nashjain/inverting-the-testing-pyramid
  982. The Forgotten Layer of the Test Automation Pyramid: https://www.mountaingoatsoftware.com/blog/the-forgotten-layer-of-the-test-automation-pyramid
  983. Agile-Friendly Test Automation Tools/Frameworks: http://testobsessed.com/2008/04/agile-friendly-test-automation-toolsframeworks/
  984. The Agile Testing Pyramid: http://www.agilecoachjournal.com/2014-01-28/the-agile-testing-pyramid
  985. WebDriver docs: https://seleniumhq.github.io/docs/wd.html
  986. See NOTES on the User Testing Methods Comparison Chart: http://dzone.com/articles/user-testing-methods-comparison-chart
  987. Test Driven Development (TDD) by Stephan Wels: https://sewiki.iai.uni-bonn.de/_media/teaching/labs/xp/2012b/seminar/3-tdd.pdf
  988. TDD strategy in Real Life: http://dzone.com/articles/tdd-strategy-in-real-life
  989. Keyword-Driven Testing overview: https://www.stickyminds.com/article/keyword-driven-testing
  990. Creating a Custom Keyword-Driven Framework: http://docs.testplant.com/ePF/using/epf-keyword-driven-testing-with-eggplant-functional.htm
  991. wikipedia: Keyword-driven testing
  992. Keyword Driven Framework Testing - Complete Tutorial: https://www.guru99.com/keyword-driven-testing.html
  993. Keyword-Driven Test Automation with Ranorex: https://www.ranorex.com/blog/keyword-driven-test-automation-framework/
  994. List of Keyword-driven testing tools: http://www.qatestingtools.com/keyword-driven-testing-tools
  995. 4 Ways to Choose Which Browsers and Devices to Test: https://crossbrowsertesting.com/blog/browsers/choose-which-browsers-to-test/
  996. Current Web Browser, OS, Device and Version Statistics (2016): https://collectiveinnovation.com/current-web-browser-os-device-and-version-statistics/
  997. Global market share held by leading smartphone vendors from 4th quarter 2009 to 4th quarter 2017: https://www.statista.com/statistics/271496/global-market-share-held-by-smartphone-vendors-since-4th-quarter-2009/
  998. OS Market Share (2018): https://netmarketshare.com/operating-system-market-share.aspx?options=%7B%22filter%22%3A%7B%22%24and%22%3A%5B%7B%22deviceType%22%3A%7B%22%24in%22%3A%5B%22Desktop%2Flaptop%22%5D%7D%7D%5D%7D%2C%22dateLabel%22%3A%22Trend%22%2C%22attributes%22%3A%22share%22%2C%22group%22%3A%22platform%22%2C%22sort%22%3A%7B%22share%22%3A-1%7D%2C%22id%22%3A%22platformsDesktop%22%2C%22dateInterval%22%3A%22Monthly%22%2C%22dateStart%22%3A%222017-03%22%2C%22dateEnd%22%3A%222018-02%22%2C%22segments%22%3A%22-1000%22%7D
  999. Browser Market Share (2018): https://netmarketshare.com/browser-market-share.aspx?options=%7B%22filter%22%3A%7B%22%24and%22%3A%5B%7B%22deviceType%22%3A%7B%22%24in%22%3A%5B%22Desktop%2Flaptop%22%5D%7D%7D%5D%7D%2C%22dateLabel%22%3A%22Trend%22%2C%22attributes%22%3A%22share%22%2C%22group%22%3A%22browser%22%2C%22sort%22%3A%7B%22share%22%3A-1%7D%2C%22id%22%3A%22browsersDesktop%22%2C%22dateInterval%22%3A%22Monthly%22%2C%22dateStart%22%3A%222017-03%22%2C%22dateEnd%22%3A%222018-02%22%2C%22segments%22%3A%22-1000%22%7D
  1000. Mobile Vendor Market Share Worldwide: http://gs.statcounter.com/vendor-market-share/mobile
  1001. Apple Trails Samsung in Smartphone Market—share, Won't likely Catch Up in 2018: http://fortune.com/2018/02/13/apple-iphone-samsung-market-share/
  1002. Apple Passes Samsung to Capture the Top Position in the Worldwide Smartphone Market While Overall Shipments Decline 6.3% in the Fourth Quarter, According to IDC: https://www.idc.com/getdoc.jsp?containerId=prUS43548018
  1003. What are examples of automated testing?: http://www.inflectra.com/Ideas/Entry/what-are-examples-of-automated-testing-688.aspx
  1004. Introducing the Web UI Test Automation Playground: http://www.inflectra.com/Ideas/Entry/introducing-the-web-ui-test-automation-playground-689.aspx
  1005. Problem Steps Recorder (PSR.exe) + Windows Error Reporting = Another tool to help find solutions to software defects: https://blogs.msdn.microsoft.com/wer/2009/03/30/problem-steps-recorder-psr-exe-windows-error-reporting-another-tool-to-help-find-solutions-to-software-defects/
  1006. Pareto Analysis - How/When To Use It: http://erc.msh.org/quality/pstools/pspareto.cfm
  1007. Pareto Analysis (the 80:20 rule): http://www.managers-net.com/paretoanalysis.html
  1008. Intro to QUnit (verbatim copy of SmashingMagazine article on JS unit testing): http://qunitjs.com/intro/
  1009. Difference Between JMeter & LoadRunner: http://www.differencebetween.net/technology/software-technology/difference-between-jmeter-and-loadrunner/
  1010. Deming institute - Eliminate Slogans, Exhortations and Targets: https://deming.org/eliminate-slogans-exhortations-and-targets/ (a criticism of "Zero Defects" mentality)
  1011. What is Zero Defects?: https://www.toolshero.com/quality-management/zero-defects/
  1012. SixSigma -- The Concept of Zero Defects in Quality Management: https://www.simplilearn.com/concept-of-zero-defects-quality-management-article
  1013. Zero Defects -- What Does It Achieve? What Does It Mean?: https://www.isixsigma.com/new-to-six-sigma/sigma-level/zero-defects-what-does-it-achieve-what-does-it-mean/
  1014. Pros & Cons of Zero Defects: https://www.shmula.com/25038-2/25038/
  1015. What Is Difference Between SDET And TESTER?: https://www.softwaretestingclass.com/what-is-difference-between-sdet-and-tester/ (SDET = Software Development Engineer in Test)
  1016. The Cost of Fixing Bugs in Production: https://www.genrocket.com/the-cost-of-fixing-bugs-in-production/
  1017. 11 of the most costly software errors in history: https://raygun.com/blog/costly-software-errors-history/
  1018. Financial Cost of Software Bugs: https://medium.com/@ryancohane/financial-cost-of-software-bugs-51b4d193f107
  1019. Software Errors Cost U.S. Economy $59.5 Billion Annually: http://www.abeacha.com/NIST_press_release_bugs_cost.htm
  1020. How much do bugs cost to fix during each phase of the SDLC?: https://www.synopsys.com/blogs/software-security/cost-to-fix-bugs-during-each-sdlc-phase/
  1021. Software Defects - Do Late Bugs Really Cost More?: https://developers.slashdot.org/story/03/10/21/0141215/software-defects---do-late-bugs-really-cost-more
  1022. Software testing black swan bites cause pain: https://testertested.blogspot.com/2010/11/software-testing-black-swan-bites-cause.html
  1023. CA Technologies buys BlazeMeter: https://www.zdnet.com/article/ca-technologies-buys-blazemeter/
  1024. Why did Broadcom acquire CA Technologies? Was this wise? How will this play out? What are the implications for Broadcom’s future and for Broadcom investors?: https://www.quora.com/Why-did-Broadcom-acquire-CA-Technologies-Was-this-wise-How-will-this-play-out-What-are-the-implications-for-Broadcom-s-future-and-for-Broadcom-investors
  1025. Weirdest. Acquisition. Ever. Broadcom buys CA Technologies: https://www.theregister.co.uk/2018/07/12/broadcom_ca_technologies/

See Also

Agile | CI/CD | SCM | Ant | Maven | Logging | Monitoring | Scheduling | Productivity | Security